实验项目四结构化程序设计-循环结构.doc
《实验项目四结构化程序设计-循环结构.doc》由会员分享,可在线阅读,更多相关《实验项目四结构化程序设计-循环结构.doc(17页珍藏版)》请在装配图网上搜索。
程序设计基础I实验报告实验项目四:结构化程序设计_循环结构学号1605120308姓名何峰专业、班级计算机类03实验时间2016年12月14日星期三实验地点机房6指导教师孙爱蓉一、实验目的及要求(1) 熟悉掌握用while语句,dowhile语句和for语句实现循环的方法。(2) 掌握在程序设计中用循环的方法实现一些常用算法(如穷举、迭代、递推等)。(3) 掌握多重循环的选择时机和使用方法; (4) 掌握使用break和continue语句的方法。二、实验设备(环境)及要求使用Visual C+ 6.0;windows系列操作系统的环境。三、实验内容与步骤(要求以“学号_姓名_题号”为名建立项目;例项目名为:2013050201_*_01)1 分别用while、do-while、for语句编程,求数列前20项之和:2/1,3/2,5/3,8/5,13/8算法提示:1) 定义实变量sum、term、a、b、c,整变量i2) 初始化: sum=0,分子a=2,分母b=13) 初始化:i(计数器)=14) 计算第i项term =a/b5) 累加sum=sum+term6) 计算c=a+b,更新b= a,更新a=c7) 计数器加1,i+8) 重复4、5、6、7,直到i209) 输出2位精度的结果#includeint main()float sum,term,a,b,c;int i;sum=0,a=2,b=1,i=1; for(i=1;i21;i+)term=a/b;sum=sum+term;c=a+b,b=a,a=c;printf(前20项的和为:%.2fn,sum);return 0;#includeint main()float sum,term,a,b,c;int i;sum=0,a=2,b=1,i=1; while(i21)term=a/b;sum=sum+term;c=a+b,b=a,a=c;i+;printf(前20项的和为:%.2fn,sum);return 0;开始结束sum=0a=2,b=1,i=1i21?是否sum=sum+termc=a+b,b=a , c=ai=i+1term=a/b#includeint main()float sum,term,a,b,c;int i;sum=0,a=2,b=1,i=1; doterm=a/b;sum=sum+term;c=a+b,b=a,a=c;i+;while(i21);printf(前20项的和为:%.2fn,sum);return 0;输出sum2.计算多项式的值:s=1!+2!+3!+4!+20!算法提示:该多项式迭代公式为:term=term*i,sum=sum+term#includeint main()float term,sum;int i;term=1,i=1,sum=0;while(i=20)term=term*i;sum=sum+term;i+;printf(sum=%fn,sum);return 0;注意:哪些变量需要初始化?变量应采用什么类型?开始结束term=0sum=0i=1i20?i=i+1sum=sum+termterm=term*i输出sum是否#includeint main()float term,sum;int i;term=1,i=1,sum=0;while(i=20)term=term*i;sum=sum+term;printf(sum=%.1fn,sum);i+;printf(sum=%fn,sum);return 0;把每一次迭代结果输出,程序应做怎样的修改?3输入正数n,要求输出Fibonacci数列的前n项。1,1,2,3,5,8#includeint main() int a,b,c,n,i;a=1,b=1;scanf(%d,&n);printf(%d,%d,a,b);for(i=3;i=n;i+)c=a+b,a=b,b=c;printf(%d,c);if(i%10=0) printf(n);return 0;4下面是计算s = n!的源程序,在这个源程序中存在若干语法和逻辑错误。 要求在计算机上对这个例子源程序进行调试修改,使之能够正确完成指定任务。例如,8! = 40320。 #include int main() int i, n, s = 1; printf(Please enter n:); scanf(%d, n); #include int main() int i, n, s = 1; printf(Please enter n:); scanf(%d,&n); for(i = 1; i = n;i+) s = s * i; printf(%d! = %dn, n, s); return 0; for(i = 1, i =S的 最小整数n”。例如,输入整数为40310,输出结果为n = 8。 要求:每道题目分别画出程序流程图,书写程序,试运行(如何输入,结果如何)N=n-i开始结束输入sTerms?是否输出nTerm=termi;I=i+1Term=1#includeint main()float S,term=1;int i=1,n;printf(请输入S的值);scanf(%f,&S);while(termS)term=term*i;i+;n=-i;printf(n为 %dn,n);return 0;5 分析题(1) 先分析程序运行的结果,然后上机编辑和运行程序,并将运行的结果与分析的结果 进行比较,若分析有误,试找出原因。 答:要想循环,则while后面不加分号 (2) 若把第5行中的k+改为+k,结果如何 答:输出Final k=1 Final k=26 分析题(1) 先分析程序运行的结果,然后上机编辑和运行程序,并将运行的结果与分析的结果 进行比较,若分析有误,试找出原因。 # (2) 若把第7行中的i%2改为 !(i%2),结果如何变化?#(3) 若把第7行中的continue改为break,结果如何变化? #通过(3)的操作,你对break和continue语句有什么认识?break语句跳出循环,不再重复,continue语句本次循环不输出继续执行循环语句7 分析题 (1) 先分析程序运行的结果,然后上机编辑和运行程序,并将运行的结果与分析的结果 进行比较,若分析有误,试找出原因。 #*#*#*8 分析题(1) 先分析程序运行的结果,然后上机编辑和运行程序,并将运行的结果与分析的结果进行比较,若分析有误,试找出原因。 b=22(2) 画出程序的流程图。 B=b-5A=a+1B=b+3B%3=1?b20?开始结束A=1,b=1a100?是否是是否否9 编写一个程序,打印10行杨辉三角。 要求:每道题目分别画出程序流程图,书写程序,试运行(如何输入,结果如何)。#include stdio.hmain()int a1120,i,j;/初始化for(i=0;i11;i+)for(j=0;j20;j+)aij=0;/给数组附值for(i=0;i10;i+)for(j=0;j=i;j+)if(j1)aij=1;/开头的第一个数为1else if(i=0)break;elseaij=ai-1j-1+ai-1j;/杨辉三角的规律for(i=0;i10;i+)for(j=0;jm3),m和n由用户从键盘上输#include#includeint main()int m,n,i,k,a=0;scanf(%d,%d,&n,&m);for(n;n=m;n+)k=sqrt(n);for(i=2;i=k+1) printf(%d ,n);a=a+1;if(a%10=0) printf(n);return 0;11 输入两个正整数m和n,求其最大公约数和最小公倍数。#includeint main()int m,n,team,a,b,c;printf(输入m和n:);scanf(%d,%d,&m,&n);if(mn)team=n;n=m;m=team;a=m;b=n;while(b)c=a%b;a=b;b=c;printf(最大公约数为:%d,a);printf(最小公倍数为:%dn,(m*n)/a);return 0;12 编程序按下列的级数求cos(x)的值并输出: 要求:x的值由键盘输入(代表弧度),运算精度保持到最后一项的绝对值小于10-6为#include#includemain()int n=2,count=1,sign=-1;float x;double sum ,term;printf(input x:);scanf(%f,&x);sum=1;term=1;doterm=-term*x*x/(n*(n-1);sum+=term;n=n+2;count+;while (fabs(term)=1e-6);printf(cos(x)=%fn,sum); 13 编写程序求一个四位数并输出。已知该整数的个数为2,十位为1,且减去7后该数能被7整除,减去8后能被8整除,减去9后能被9整除。#includeint main()int a,b,m;for(a=1;a=9;a+)for(b=0;b=9;b+)m=a*1000+b*100+12;if(m%7=0&m%8=0&m%9=0)printf(%dn,m);else continue;return 0;开始结束个位2,十位1一个四位数能否被7整除?能否被9整除?能否被8整除?能否能能否否四、分析与讨论要想学好程序设计,不但要学好理论知识,我觉得上机实践同样重要!五、教师评语签名:日期:成绩- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 项目 结构 程序设计 循环
装配图网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文