VC6.0IDE使用和程序调试技巧.ppt

VC6.0IDE使用和程序调试技巧.ppt

ID:59228232

大小:559.50 KB

页数:34页

时间:2020-09-22

VC6.0IDE使用和程序调试技巧.ppt_第1页
VC6.0IDE使用和程序调试技巧.ppt_第2页
VC6.0IDE使用和程序调试技巧.ppt_第3页
VC6.0IDE使用和程序调试技巧.ppt_第4页
VC6.0IDE使用和程序调试技巧.ppt_第5页
资源描述:

《VC6.0IDE使用和程序调试技巧.ppt》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、VC6.0IDE的使用和程序调试技巧VC6.0IDE的使用程序调试技巧作业分析1一、如何用IDE创建文件和项目2首先,创建一个项目project345然后,给项目添加头文件和源代码文件6添加definition.h和main.c之后的界面文件里面什么也没有107二、在definition.h和main.c之内添加相关的程序代码82米3米Va2、1基本思路:由于每个球受到的作用力是可以计算的,那么每次时间增加量为t后的球位置也是可以计算的(牛顿定理)。在新位置,可以判断球是否已经落袋。如此反复,就可以模拟整个过程。9t1t2t3t4t

2、n102米3米VaY轴X轴坐标体系的选择2011初试化函数init()作用力计算ForceCal()运动位置BallNewState()RemoveFromBallList()ResultOutput程序的流程121、一些常数是必须提前知道的:#defineTOTALBALLNUMBER17#defineORIGINX0//球阵列的中心位置#defineORIGINY0#defineHEIGHT3.0//高,Y轴#defineWIDTH2.0//宽,X轴#defineCORNER0.1//球袋的尺寸,大小有什么影响?#defineIN

3、TERVAL0.1//球之间的间隔#defineMAXDISTANCE0.3//这样所有的球都有一定的初速度,为什么?2、2程序编制之前必须进行一些定义132、定义球的结构typedefstruct{intNo;floatx,y;floatvx,vy;floatax,ay;floatmass;}BilliardsType;3、定义落袋球记录数据结构typedefstruct{floatElapsedTime;intBallNo;}RecordingType;144、定义相关的全局变量(一般应该少用)BilliardsType*Ball

4、List;//球的名单RecordingType*ResultList;//落袋球的记录floatCurrentTime,MinTimeInterval;intCurrentBallNumber;//现在桌面上还有几个球?35152、3各个函数的基本过程16main(){Init();while(CurrentBallNumber>1)//如果有的球就是不落袋会怎么样?{ForceCal();BallNewState();RemoveFromBallList();CurrentTime+=MinTimeInterval;//记录已经运

5、动的时间}ResultOutput();//释放申请的内存free(ResultList);free(BallList);}17voidInit(){//给指针申请内存BallList=(BilliardsType*)calloc(TOTALBALLNUMBER,sizeof(BilliardsType));ResultList=(RecordingType*)calloc(TOTALBALLNUMBER,sizeof(RecordingType));if(BallList==NULL)printf("memapplicationfo

6、rBallListfailed");if(ResultList==NULL)printf("memapplicationforBallListfailed");//给定各个静止球的初始状态,球排o列成4x4方形,给一定的初速度BallList[XCounter].No=XCounter;BallList[XCounter].x=ORIGINX+INTERVAL*(XCounter%4-2);//4和2可用宏定义BallList[XCounter].y=ORIGINY+INTERVAL*(int)(XCounter/4-2);//输入运

7、动球的位置和速度,也初始化其他参数//其它的需要初始化的参数CurrentTime=0;MinTimeInterval=0.0001;//越小越精度高CurrentBallNumber=TOTALBALLNUMBER;}5018voidBallNewState(){floatt;t=MinTimeInterval;//仅仅是为了书写方便for(intBallOne=0;BallOne

8、lList[BallOne].ax*t*t/2.0;BallList[BallOne].y+=BallList[BallOne].vy*t+BallList[BallOne].ay*t*t/2.0;//球是不能出球桌的,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。