实验三 C循环结构程序设计
一、实验目的
1.熟悉用while语句,do-while语句和for语句实现循环的方法。
2.掌握在程序设计中用循环的方法实现各种算法(如穷举、迭代、递推等)。 3.进一步掌握数据的输入输出的方法,能正确使用各种格式转换符;
二、实验内容
1.有以下程序: (1)#include void main() {int a=1,b;
for(b=1;b<=10;b++) {
if(a>=8) break;
if(a%2==1) { a+=5; continue; } a-=3; }
printf(\"%d\\n\}
(2) #include void main() { int i,j,sum; for(i=3;i>=1;i--) { sum=0;for(j=1;j<=i;j++) sum+=i*j; }
printf(\"%d\\n\}
以上程序运行后的输出结果是什么?并分析这个结果得出步骤 2.编程实现输出100以内(不含100)能被3整除且个位数为6的所有整数。
3.编程求1~200中能被2,3,5除余1的前10个整数。
4.(选做)将以下程序按要求补充完整。程序实现的功能为先由计算机“想”一个1到100之间的数(已经实现,用变量a存储计算机想的那个数)请人猜,如果人猜对了,则结束游戏,并在屏幕上输出人猜了多少次才猜对此数,以此来反映猜数者“猜”的水平,否则计算机给出提示,告诉人所猜的数是太大还是太小,直到人猜对为止。(要求每次运行程序时机器所“想”的数不能都是一样的。) #include #include#include//包含随机函数头文件int main() {int a;
srand((int)time(0));
a=0+rand()%100;//产生【0,100】之间的数据
„„ „„ } }
三、实验程序清单及结果 1.(1).
分析: 初始b=1,a=1,执行a=a+5=6,b=b+1=2; 此时b=2<10,执行a=a-3=3,b=b+1=3; 此时b=3<10,执行a=a+5=8,b=b+1=4; 此时a=8,循环结束,输出b=4.
1.(2) . 分析:初始:i=3>1,sum=0,j=1执行sum=0+3x1=3,j=j+1=2,i=i-1=2;
此时j=i,执行sum=3+2x2=7,j=j+1=3; 此时j>i,执行外部循环; i=2,赋值sum=0,j=1,j执行sum=0+2X1=2,J=J+1=3,I=I-1=1; 此时j>I,赋值sum=0,j=1,j=i,
执行sum=0+1x1=1,j=j+1=2,i=i-1=0; 此时i=0,结束,输出sum=1
2.
3.
四、实验总结(总结本次实验遇到的问题及解决方法)