C语言深入编程。期末课程设计报告成功案例

上传人:zw****58 文档编号:44137792 上传时间:2018-06-08 格式:DOC 页数:22 大小:248.50KB
返回 下载 相关 举报
C语言深入编程。期末课程设计报告成功案例_第1页
第1页 / 共22页
C语言深入编程。期末课程设计报告成功案例_第2页
第2页 / 共22页
C语言深入编程。期末课程设计报告成功案例_第3页
第3页 / 共22页
C语言深入编程。期末课程设计报告成功案例_第4页
第4页 / 共22页
C语言深入编程。期末课程设计报告成功案例_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《C语言深入编程。期末课程设计报告成功案例》由会员分享,可在线阅读,更多相关《C语言深入编程。期末课程设计报告成功案例(22页珍藏版)》请在金锄头文库上搜索。

1、1北京理工大学珠海学院 计算机学院 C C语语言言深深入入编编程程课程设计报告题目 心算如电 小游戏_ _完成日期: 2009 年 6 月 19 日2原创性声明本人郑重声明:所呈交的课程设计报告,是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用的内容外,本文不包含任何其他个人或集体已经发表或撰写过的作品成果。对本文的研究作出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。作者签名:作者签名:日期:日期:20092009 年年 6 6 月月 1919 日日3目 录一、序言.04二、课程设计题目.05三、设计算法与思路.05四、采用的

2、变量和数组数据.06五、流程图.08六、源代码.12七、调试分析.17八、个人课程设计心得体会.20九、致谢.21十、参考文献.21教师评语及成绩评定表.224一、一、 序言序言进入进入 2121 世纪以来,社会信息化进程不断加速,信息化范围和个行世纪以来,社会信息化进程不断加速,信息化范围和个行个业信息化的程度都是空前的且不断的快速推进。个业信息化的程度都是空前的且不断的快速推进。C C 语言功能强大,具有丰富灵活的控制与数据结构、简洁而高效的语言功能强大,具有丰富灵活的控制与数据结构、简洁而高效的表达语句、清晰的程序结构、良好的移植性、较小的空间开销等优点,表达语句、清晰的程序结构、良好的

3、移植性、较小的空间开销等优点,已被广泛应用于将系统软件与应用软件的开发中。已被广泛应用于将系统软件与应用软件的开发中。C C 语言是目前流行的通用程序设计语言,之所以成为许多计算机专语言是目前流行的通用程序设计语言,之所以成为许多计算机专业人员和计算机爱好者学习程序设计的首选入门语言,除业人员和计算机爱好者学习程序设计的首选入门语言,除 C C 语言的众语言的众多优点外,最主要的还是多优点外,最主要的还是 C C 语言的实用性。语言的实用性。C C 语言是程序设计的工具,因此学会使用语言是程序设计的工具,因此学会使用 C C 语言并不是唯一目的,语言并不是唯一目的,掌握计算机处理问题的思维方式

4、和程序设计的基本方法,用以解决实掌握计算机处理问题的思维方式和程序设计的基本方法,用以解决实际问题更为重要。际问题更为重要。而课程设计是重要环综合性较强的实践环节,它对帮助我们学生而课程设计是重要环综合性较强的实践环节,它对帮助我们学生全面牢固地掌握课堂教学内容、培养我们学生的实践和实际动手能力、全面牢固地掌握课堂教学内容、培养我们学生的实践和实际动手能力、提高我们学生全面素质具有重要的意义。提高我们学生全面素质具有重要的意义。通过通过课程设计课程设计, ,提高学生在实际设计操作中系统分析、结构确定、提高学生在实际设计操作中系统分析、结构确定、算法选择、数学建模和信息加工的能力以及算法选择、数

5、学建模和信息加工的能力以及 C/C+C/C+语言程序设计能力;语言程序设计能力;同时同时培养我们学生编写程序设计文档的能力。培养我们学生编写程序设计文档的能力。由于本人水平有限由于本人水平有限, ,加上课程设计的时间紧迫,程序仍有很多不足加上课程设计的时间紧迫,程序仍有很多不足之处,逻辑还不够严密,在算法设计上还有待改善之处,逻辑还不够严密,在算法设计上还有待改善. .。希望老师见谅。希望老师见谅。我会在今后的学习,不断改进改善程序。我会在今后的学习,不断改进改善程序。 5二、课程设计题目为小学生设计“心算如电”的竞技游戏,考验学生的加法运算能力,提高学生的心算能力和心理素质,力求达到快、准。

6、要求:1、游戏共两关,第一关,每个加数范围从 09;第二关每个加数范围从 099;2、必须连续答对 10 道题,才算通关;错一题,则归零;3、答题期间,不给出已答题数,由学生自动选择退出与否,若选择退出,则显示答题总数和答对总题数,连续答对 10 题者,外加输出星号三角行;4、若失败则可重新开始,也可继续闯第二关;5、第二关,通关则输出菱形。(注释:为了便于调试可采取答对三题过一关的方法进行程序编写。 )3、设计算法与思路该程序是针对小学生设计的简单游戏,共分两关,该程序是针对小学生设计的简单游戏,共分两关, (初步)决定调(初步)决定调用两个函数,由系统自动出题,所以采用用两个函数,由系统自

7、动出题,所以采用 rand()rand()提取两个随机数,要提取两个随机数,要答对答对 1010 题才可以过关,所以可采用先执行后判断的循环控制语句题才可以过关,所以可采用先执行后判断的循环控制语句 do-do-whilewhile 来实现过关与否,星号三角形和菱形可再定义一个函数采用来实现过关与否,星号三角形和菱形可再定义一个函数采用 forfor循环结构输出!循环结构输出!我的具体的程序设计思路是这样的:我的具体的程序设计思路是这样的:依题注释,采用宏定义,定义依题注释,采用宏定义,定义 T=3T=3,代替,代替 1010,减化程序调试过程,减化程序调试过程6定义一个函数定义一个函数 m(

8、)m()来实现每一关的出题和答题,用来实现每一关的出题和答题,用 rand()rand()函数随函数随机提取两个在定义范围内的数,赋值于变量机提取两个在定义范围内的数,赋值于变量 firstfirst 和变量和变量 seconddidseconddid即是两个加数。即是两个加数。采用采用 ifif 语句判断答题正确与否,定义变量语句判断答题正确与否,定义变量 diddid 和和和和 okok,采用自加,采用自加运算符(运算符(+)在函数)在函数 m()m()中全程跟踪已答题数和答题正确数。中全程跟踪已答题数和答题正确数。在函数在函数 m()m()中采用先执行后判断的循环控制语句中采用先执行后判

9、断的循环控制语句 do-whiledo-while 实现局实现局部控制,用字符来实现,接着再使用部控制,用字符来实现,接着再使用 ifif 语句判断是否输出星号三角形。语句判断是否输出星号三角形。定义一个函数定义一个函数 m1()m1(),采用函数嵌套调用来输出星号三角形,星号,采用函数嵌套调用来输出星号三角形,星号三角形用双重三角形用双重 forfor 循环结构来实现输出。循环结构来实现输出。第一关与第二关类似,即需再定义两个函数第一关与第二关类似,即需再定义两个函数 n()n()和和 n2()n2()主函数主函数 void()void()先输出游戏的一般信息先输出游戏的一般信息“心算入电心

10、算入电” ,用,用 getchar()getchar()函数来占用一个回车键函数来占用一个回车键; ;调用函数调用函数 m()m()实现第一关游戏,实现第一关游戏, (用(用 ifif 语句链语句链接是否进去第二关游戏)接是否进去第二关游戏) ,调用函数,调用函数 n()n()来实现第二关游戏。来实现第二关游戏。程序思路简述完毕。程序思路简述完毕。四、采用的变量和数据宏定义宏名作用值T控制过关应连续答对的 题数3M控制随机数的取值范围10N控制随机数的取值范围1078作用区 域变量作用类型值主函数 Void main()go控制游戏的进程字符型go 的判断值为 gok计算答题正确数整形ok 的

11、初值为 0did计算答题总数整形did 的初值为 0first实参(加数)整形随机数second实参(加数)整形随机数answer给学生的答案赋值整形输入correct计算两实参的和整形分函数 Void m() 分函数 Void n()contin控制游戏的进程字符型contin 的初值 为yi循环变量整形i 从 1 到 3 自 增分函数 Void m1()j循环变量整形j 从 1 自增到 (202*i)和 (2*i1) i循环变量整形i 从 1 到 4 自 增 i 从 3 到 1 自 减分函数 Void n2()j循环变量整形j 从 1 自增到 (202*i)和 (2*i1)9五、流程图五、

12、流程图流程图如:printf(“欢 迎使用 心 算如电 益 智游戏 按 Enter 键开 始n“)printf(“ 进入下 一关, 你准备 好了吗? (go or not) “)scan f(“% s“,g et c h a r( );scanf(“%d “,did+;correct= first+sec ondan s w er = =c or re ctYes printf(“ 好样的! 答对了! n“);ok+;printf (“NO ! 正 确答 案是 %dn “,corr ect);scanf (“%s “,printf (“继 续答 题? (y,n) “)contin =yc o

13、nt in = = Y printf(“做了% d 道题n“,did);printf(“ 答对%d 道题 “,ok);printf(“n“);ok = Tfor(i=1;i=Telse printf(“请重新开始n“);printf(“n“);getchar();void n2()int i,j;for(i=1;i=1;i-)for(j=1;j=Tn2();void main()char go;printf(“欢迎使用 心算如电 益智游戏 按 Enter 键开始n“);16getchar();m();printf(“进入下一关,你准备好了吗?(go or not) “);scanf(“%s“,

14、if(go=g)n();printf(“Game Over!n“);getchar();七、调试分析此程序在“C 与 C+程序设计学习与实验系统 2008.10”与“VC6.0”上调试皆通过,其结果如下:1、主界面 2、游戏开始173、第一关失败4、第一关成功5、闯第二关186、第二关功成7、第二关失败19八、个人课程设计心得体会回顾起此次课程设计,至今我仍感慨颇多,从老师出题,到自己选回顾起此次课程设计,至今我仍感慨颇多,从老师出题,到自己选题,然后确定题目直到完成整个编程,从理论到实践,在整整两个多题,然后确定题目直到完成整个编程,从理论到实践,在整整两个多星期的日子里,我沉浸在编程的乐趣里,不仅巩固了以前所学过的知星期的日子里,我沉浸在编程的乐趣里,不仅巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。识,而且学到了很多在书本上所没有学到过的知识。通过本次论文设计,我初步学会了论文设计的基本方法,学会了通过本次论文设计,我初步学会了论文设计的基本方法,学会了怎样去借鉴别人的方法和经验,知道如何去查找资料和整合处理这些怎样去借鉴别人的方法和经验,知道如何去查找资料和整合处理这些资料的能力,这为以后的大学毕业设计论文打下了一个初步的基础使资料的能力,这为以后的大学毕业设计论文打下了一个初步的基础使我收益

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号