c语言课程设计特殊数据输出优质PPT.ppt
《c语言课程设计特殊数据输出优质PPT.ppt》由会员分享,可在线阅读,更多相关《c语言课程设计特殊数据输出优质PPT.ppt(23页珍藏版)》请在冰豆网上搜索。
,开发环境,VisualC+6.0windows7旗舰版,系统功能需求分析,1、产品背景明细程序名称:
特殊数据的输出2、需求:
用户解决问题或达到目标所需的条件或功能;
系统或系统部件要满足合同、标准,规范或其它正式规定文档所需具有的条件或权能。
功能需求分析:
理论上能够实现于对特殊数据的输出,其目的在于输出小于n的以下7种特殊数据中的一种:
(1)完全数;
(2)亲密数;
(3)水仙花数;
(4)阶乘和数;
(5)自守数;
(6)孪生素数;
程序开发的目标:
对特殊数据的输出,同时通过实践来提高自己的动手能力。
3、输入输出的要求
(1)输入要求:
按所要求的类型由系统产生随机数,选择相应的菜单选项,另外,还要提供键盘式选择菜单以实现功能选择。
(2)输出要求:
按所指的类型输出相应的特殊数。
系统总体设计框架,主要功能模块的算法设计,*主函数实现正整数n的随机产生和菜单的显示C编译器提供了基于ANSI标准的伪随机数发生器函数rand()和srand(),用来生成随机数。
这二个函数的工作过程如下:
srand()提供一个种子,它是一个unsignedint类型,其取值范围从065535;
然后调用rand(),它会根据提供给srand()的种子值返回一个随机数(在0到32767之间);
根据需要多次调用rand(),从而不间断地得到新的随机数;
无论什么时候,都可以给srand()提供一个新的种子,从而进一步“随机化”rand()的输出结果。
主要功能模块源程序,主要功能模块的算法设计,*子函数实现1到n之间的特殊数据的判断和输出,不同类型特殊数据的判断用不同子函数实现。
1、各类特殊数据
(1)完全数是恰好等于自身的因子之和的数,例如6是完全数,因为6=1*2*3=1+2+3。
(2)亲密数是两个正整数,其中一个整数的全部因子之和等于另一个(因子中不计本身),例如220和284是亲密数,因为220的全部因子是1,2,4,5,10,11,20,22,44,55,110,和为284;
而284的全部因子是1,2,4,71,142,和为220。
(3)水仙花数是恰好等于自身各位数字立方和的数,例如153是水仙花数,因为153=13+53+33。
(4)阶乘和数是恰好等于自身各位数字阶乘的和的数,例如145是阶乘和数,因为145=1!
+4!
+5!
。
(5)自守数是平方后尾部数字是自身的数,例如9376是,因为93762=87909376。
(6)孪生素数是差2的两个素数,例如197和199。
2.建议编写一个函数求出某数的因子和,以减少求完全数和亲密数函数中的重复代码。
3.自守数中整数x尾部数字的求法:
x%10表示x的最后一位数字,x%100表示x的最后两位数字,x%1000表示x的最后三位数字,以此类推。
主要功能模块源程序,2022/10/14,调试过程出现的问题及解决方法,问题出现的源头仅仅是弄成了(也就是将中文模式下的符号当作了英文模式下的符号),既然知道了错误之处,解决出来就比较容易了。
调试过程出现的问题及解决方法,经过改正,错误降到了一个。
调试过程出现的问题及解决方法,这次的错误就显而易见了,n还没有定义。
调试过程出现的问题及解决方法,这一次错误就没有了。
测试数据及测试结果,测试数据:
测试结果:
设计用到的知识点,1.函数的参数;
2.多分支条件语句;
3.循环;
4.数据的输入输出;
5.随机函数的使用。
收获与体会,通过这次的课程设计,我们对C语言这门课程有了深一步的理解。
它是计算机程序设计的重要理论技术基础,在我们计算机专业的学习中占据十分重要的地位,同时也使我们知道要学习这门课程,仅学习书本上的知识是不够的,还要有较高的实践能力。
因为我们学习知识就是为了实践,而只有实践多编写程序才能更好的理解与掌握书本上的东西。
我们还要学会分析题目的已知与未知,学会中合起来考虑问题,在逐步的展开思想,特别是碰到大问题时要细细的分解成为许多小的问题来解决。
同时我还学到了课外的知识,碰到难题是不要逃避,而是要迎难而上,反复的实验调试结果后,再错的基础上做修改。
不足与努力方向,这次课程设计时间不长,却感受很深。
无论是在学习知识还是在解决问题的能力上,都有深刻的认识,总结如下:
(1)程序设计思路一定要清晰,主函数尽量简洁,这样在调试过程中若出现错误,只要沿着主函数的思路逐个排查即可。
一个条理清楚的框架结构有利于编译过程中查找并解决问题。
(2)编译、调试时最好分模块进行。
我第一次调试时是在整个程序编辑完后一次性编译,一下子出现了很多处错误。
在老师及同学们的指导下,我新建了一个工作区并从主函数开始分模块进行编译调试,一个函数确认没有错误后在加入下一个函数,这样分步进行使每处错误便于查找和更改。
(3)细节处一定要注意,我刚刚编程时很容易丢落“;
”“”等符号,而这会对程序的编译造成极大的不便。
一个优秀的程序员应时刻注意细节,养成细心的良好品质。
参考书籍及参考论文与网址,1.谭浩强著.C程序设计(第3版).北京:
清华大学出版社,2005.72.刘光蓉、汪靖、陆登波主编.C程序设计实验与实践教程.北京:
清华大学出版社,2011.23.游洪跃主编.C语言程序设计实验与课程设计教程.北京:
清华大学出版社,2011.54.http:
/,谢谢观赏!