C++课程设计报告分析.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C课程设计报告分析

C++课程设计报告 学院:信息工程学院 姓名: 班级: 学号: 指导老师: 实习题目一 【需求规格说明】 1、福尔摩斯到某古堡探险,看到门上写着一个奇怪的算式:ABCDE * ? = EDCBA。他对华生说:“ABCDE应该代表不同的数字,问号也代表某个数字!”华生:“我猜也是!”。于是,两人沉默了好久,还是没有算出合适的结果来。请你利用编程技术,找到破解的答案。 问题描述: ABCDE代表一个五位数,EDCBA代表这个五位数倒过来输出,用一个五位数乘以一个个位数等于这个五位数倒序输出。 问题分析: ABCDE从最小的符合条件的五位数开始遍历,j从1开始遍历,用两个循环控制。 【算法设计】 (1)设计思想: 写一个整型函数InvertedOrder,功能是将一个五位数倒序输出,方便下面if语句判断条件的编写。 用for循环从最小的、最后一位不是零且没有重复数字的五位数开始,每循环一次加1,内部套一个for循环,控制?代表的数字从1开始,每次加1。若不符合题设条件继续执行下一次循环,如果符合条件,就用if语句控制跳出循环,最后输出想要的等式。 (2)设计表示: InvertedOrder 传入参数(一个五位数)ABCDE 分开存入数组n中 n[5]={A,B,C,D,E} 返回倒序后的数 InvertedOrdered=EDCBA 开始 ABCDE=10234;ABCDE10000;ABCDE++ ABCDE*j=EDCBA? 输出ABCDE*j=EDCBA 结束 是 否 j=1;j10;j++ 否 【调试报告】 未出现错误。 【附录】 源程序清单: #include stdafx.h #includeiostream using namespace std; int n[5]; int InvertedOrder(int num) //将一个5位数倒序输出 { int i,m; n[4]=num%10; m=num/10; for(i=3;i=0;i--) //将5位数的每一位分开,依次储存在整型数组n中 { n[i]=m%10; m=m/10; } int InvertedOrdered=n[4]*10000+n[3]*1000+n[2]*100+n[1]*10+n[0];//倒序输出 return InvertedOrdered; } int _tmain(int argc, _TCHAR* argv[]) { int i,j; for(i=10234;i100000;i++) //从最小的没有重复数字的五位数开始循环 { for(j=1;j10;j++) { if(i*j==InvertedOrder(i)n[0]!=n[1]n[0]!=n[2]n[0]!=n[3]n[0]!=n[4] n[1]!=n[2]n[1]!=n[3]n[1]!=n[4]n[2]!=n[3]n[2]!=n[4]n[3]!=n[4]) break; //符合题目给的条件就跳出循环 } if(i*j==InvertedOrder(i)n[0]!=n[1]n[0]!=n[2]n[0]!=n[3]n[0]!=n[4] n[1]!=n[2]n[1]!=n[3]n[1]!=n[4]n[2]!=n[3]n[2]!=n[4]n[3]!=n[4]) break; //接着上个跳出继续跳出 } couti*j=i*jendl;//输出题目要求的等式 return 0; } 运行结果: 实习题目二 【需求规格说明】 2、小明带两个妹妹参加元宵灯会。别人问她们多大了,她们调皮地说:“我们俩的年龄之积是年龄之和的6倍”。小明又补充说:“她们可不是双胞胎,年龄差肯定也不超过8岁啊。” 请你写出:小明的较小的妹妹的年龄。 问题描述: 设两个人的年龄分别为s、l,s代表年龄较小的妹妹,l代表年龄较大的妹妹。 两人的年龄符合s*l=6*(s+l)和l+s8,即可解得s和l的值。 问题分析: s和l都从1开始遍历,用两个循环控制。 【算法设计】 (1)设计思想: 用for循环控制s从1开始,每循环一次加1,内部套一个for循环,控制l从1开始,每次加1。若不符合题设条件继续执行下一次循环,如果符合条件,就用if语句控制跳出循环,最后输出想要的等式。 (2)设计表示: 开

文档评论(0)

586334000 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档