资源描述:
《吕军妹课程设计报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、江苏省江阴职业技术教育中心校JiangYinVocationalTechnologyEducationSchool课程设计报告课程名称:C语言设计题目:怎样组合值最大班级:06计信(1)班姓名:吕军妹学号:0621403101指导教师:丁燕萍江苏省江阴职业技术教育中心校二○○八年五月目录题目分析……………………………………………………………………(1)总体设计……………………………………………………………………(1)代码实现……………………………………………………………………(3)常见问题分析……………………………
2、…………………………………(4)心得体会……………………………………………………………………(4)参考资料……………………………………………………………………(5)江苏省江阴职业技术教育中心校课程设计课程设计报告一、题目分析:题目要求:将5、6、7、8、9填入下面的空格中,使他们的积有最大值 题目虽然很简单,但直接找答案,还是有点难度。只有5、6、7、8、9五个数,往五个空里填,情况还不是很多,算一下,总计有5*4*3*2*1=120种情况
3、,我们就从这120种情况中找出最大的一个值。我们的问题分成两大部分,一是如何填空,以使120种可能的情况全部填遍;第二是根据填好的空算出值来,并比较这数值的大小 为了便于找规律,还是用数组来完成该题目。设一数组s(1-5)来放五个数来,用max(1-5)放每次比较中的最大的数。二、总体设计:1、所有方案有了s(1-5),只要在s(1)中放入5、6、7、8、9中任一个数; 在s(2)中放入和s(1)不同的数;在s(3)中放入和s(1)、s(2)全都不同的数;其他s(3)与s(4)与上面放法类似。这样,题中的五个空就
4、可用s(1)到s(5)来代表了。有了这五个数组,下面的表达式也就成了(s(1)*100+s(2)*10+s(3))*(s(4)*10+s(5))后面要找到最大值,实质上也就是找上式的最大值。2、最大的数最大的值我们通过max(1-5)来放置。放的过程安排如下:方案中第一个s(1-5)所代表的值直接放入最大max(1-5)中就行了而从第2到第120个都遵循下面的原则,如果max(1-5)的值比s(1-5)大,则保留max(1-5)中的,否则,则用s(1-5)的值替换max(1-5)值就行了,而从第2到第120个都遵循
5、下面的原则,如果max(1-5)的值比s(1-5)大,则保留max(1-5)中的,否则,则用s(1-5)中的值替换max(1-5)值。通过这样的程序,最终得到的就是最大值,我们只要将max(1-5)中的各值输出,结果也就一目了然了。5江苏省江阴职业技术教育中心校课程设计N-S图Yforp2=5to9s[1]=p1forp1=5t09Intmax[6],p1,p2,p3,p4,p5,s[6],intA,B,n=0,ip!=p2Ns[2]=p2Forp3=5to9p1!=p3&&p2!=p3YNs3]=P3forp4=
6、5to9①YNs[4]=p4④②NY③⑤注释:①p4!=p1&&p4!=p2&&p4!=p3②p5!=p1&&p5=p2&&p5=p3&&p5=p4③S[5]=p5④forp5=5to95江苏省江阴职业技术教育中心校课程设计⑤fori=1to5,max[i]=s[i]YNA=(s[1]*100+s[2]*10+s[3])*(s[4]*10+s[5])B=(max[1]*100+max[2]*10+max[3])*(max[4]*10+max[5])Max[6]=A*Bmax[i]=s[i]fori=1to5n==1
7、Nn=n+1YA>Bfori=1to5输出max[i]三、代码实现main(){inti,p1,p2,p3,p4,p5,s[6],max[6],n=0;longintA,B;for(p1=5;p1<10;p1++){s[1]=p1;for(p2=5;p2<10;p2++){if(p2!=p1){s[2]=p2;for(p3=5;p3<10;p3++){if(p3!=p2&&p3!=p1){s[3]=p3;for(p4=5;p4<10;p4++){if(p4!=p3&&p4!=p2&&p4!=p1){s[4]=p4;
8、for(p5=5;p5<10;p5++){if(p5!=p4&&p5!=p3&&p5!=p2&&p5!=p1){s[5]=p5;n=n+1;5江苏省江阴职业技术教育中心校课程设计if(n==1)for(i=1;i<6;i++)max[i]=s[i];else{A=(s[1]*100+s[2]*10+s[3])*(s[4]*10+s[5]);B=(max[1]