资源描述:
《实验三 循环结构程序设计(答案)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验教案课题(项目)名称:实验三循环结构程序设计计划学时:2学时实验类型:1.演示性√2.验证性√3.综合性√4.设计性√5.其它□授课日期:年月日第周星期第节一、实验目的(1)掌握while、do~while、for语句的使用。(2)掌握循环体内使用break、continue语句的作用。(3)掌握循环及嵌套循环结构的程序设计方法。二、实验准备1.C语言实现循环的方法①goto和if构成的循环:由于goto是无条件转向,不符合结构化程序设计思想,所以不建议使用。②while循环:实现“当型”循环,首先判断循环条件,当条件为真,执行循环体
2、,再判断循环条件……此种循环有可能一次也不执行循环体。(当条件成立的时候执行循环体。如果待解决的问题不知道循环的具体重复执行的次数,只知道循环的结束条件时,经常采用这种循环处理结构。)例如:从键盘输入若干个整数,当输入0时结束输入并求这些整数的和。#includevoidmain(){intnum,total;total=0;scanf(“%d”,&num);while(num!=0){total+=num;scanf(“%d”,&num);}printf(“%d”,total);}③do~while循环:实现“直到
3、型”循环,与while循环的区别是先执行循环体,再判断循环条件,当循环条件为真,再执行循环体……此种循环至少执行一次循环体。例如:统计从键盘输入的一行非空字符的个数。#includevoidmain(){charc;intn=0;do{c=getchar();n++;}while(c!=’’);}④for循环:与while循环类似,一般用于知道循环变量初值、终值及步长值的循环。2.break和continue语句①break语句:可用在循环体或switch语句中,作用是跳出其所在的控制结构。若是在循环体中,则是跳出其
4、所在的循环,使得循环不止一个出口。②continue语句:只能用在循环体中,其作用是结束本层本次循环,注意不是退出循环。(在循环体中的continue语句执行之后,其后的语句均不再执行。)例如:输出1—1000之间能被3、5、7同时整除的数。#includevoidmain(){intn;for(n=1;n<=1000;n++){if(n%3!=0)continue;if(n%5!=0)continue;if(n%7!=0)continue;printf(“%8d”,n);}printf(“”);}3.阅读以下程序,
5、并分析其功能,调试运行程序后再分析其运行结果。①掌握三种方法求1到100的累加和。文件名为ex3-1-1.c,内容如下:#includemain(){intsum=0,i=1;while(i<=100)sum+=i++;//等价于:{sum=sum+i;i++;}printf("sumis%d",sum);}文件名为ex3-1-2.c,内容如下:#includemain(){intsum=0,i=1;dosum+=i++;while(i<=100);printf("sumis%d",sum);}
6、文件名为ex3-1-3.c,内容如下:#includemain(){intsum=0,i;for(i=1;i<=100;i++)sum+=i;printf("sumis%d",sum);}②程序二,程序文件名为ex3-2.c。(掌握递推算法(求值))#include#includevoidmain(){ints=1;floatn=1,t=1,pi=0;while(fabs(t)>1e-6)//当前项实数t的绝对值大于1*10-6则执行循环体{pi=pi+t;//累加当前项n=n+2;
7、//推算下一项的分母s=-s;//推算下一项的符号t=s/n;//计算下一项的值}pi=pi*4;printf("pi=%f",pi);}③程序三,程序文件名为ex3-3.c。(掌握迭代算法(处理fibonacci数列前40项))#includevoidmain(){longf1=1,f2=1;inti;for(i=1;i<=20;i++){printf("%12ld%12ld",f1,f2);//输出当前的两项if(i%2==0)//循环2次后输出回车换行,即一行输出4个数printf("");f1=f1+f2
8、;//推算之后的第一项f2=f1+f2;//推算之后的第二项}}④程序四,程序文件名为ex3-4.c。(掌握穷举算法(判素数))#include#include