实验三、循环结构程序设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三循环结构程序设计
一、实验目的
1.掌握while,do-while,for循环语句的使用与区别;
2.掌握循环条件、循环体、循环终止等循环要素;
3.理解循环执行过程,掌握循环嵌套的执行过程;
4.熟练使用循环语句编写程序;
5.掌握break、continue的使用。
二、实验学时数
4学时
三、实验内容与步骤
(一)阅读程序
要求:先自行判断程序的执行结果,再输入并运行下列程序,写出各个程序的运行结果,并理解和分析程序代码。
1.#include
int main()
{ int a=2,b=8;
while(b--<0)
b-=a ;
a++ ;
printf(“a=%d,b=%d\n”,a,b);
return 0;
}
输出结果:_________________________________。
2. # include
int main()
{ int x=2 ,y=6 , z=3;
do
y=y-1;
while(z-->0&&++x<5) ;
printf(“x=%d\ty=%d\tz=%d\n”,x,y,z);
return 0;
}
输出结果:_________________________________。
3. #include
int main()
{ int n=0;
while(n<=2)
{ n++;
printf("%d\n",n);}
return 0;
}
输出结果:_________________________________。
4. #include
int main( )
{ int a=0,j;
for(j=0;j<4;j++)
{ switch( j )
{ case 0:
case 3:a+=2;break;
case 1:
case 2:a+=3;break;;
default:a+=5;break;
}
}
printf("%d\n",a);
return 0;
}
输出结果:_________________________________。
5. #include
int main( )
{ int i;
for(i=1;i<6;i++)
{ if(i%2) {printf("#");continue;}
printf("*");
}
printf("\n");
return 0;
}
输出结果:_________________________________。
6. #include
int main()
{ int s=0,t,i,j;
for(i=1;i<=3;i++)
{ t=1;
for(j=1;j<=2*i-1;j++)
t=t*j;
s=s+t;
}
printf("%-5d\n",s);
return 0;
}
输出结果:_________________________________。
7. #include
int main()
{ int y,a;
y=2;a=1;
while(y--!=-1)
{ do
{
a*=y;
a++;
}while(y--);
}
printf("%d,%d\n",a,y);
return 0;
}
输出结果:_________________________________。
(二)完成程序
要求:依据题目要求,分析已给出的语句,填写空白。不允许增行或删行,改动程序的结构。1.以下程序的功能是计算正整数2345的各位数字平方和,即sum=22+32+42+52。
#include
int main()
{ int n,sum=0;
n=2345;
do
{ sum = sum + _______ _____;
_______________ _______;
} while(n) ;
printf("sum=%d\n",sum);
return 0;
}
2.以下程序的功能是计算S=2+4+8+16+ (128)
#include
int main()
{ int a, s, n , count ;
a=2, s=0, n=1, count=1;
while(count<=7)
{ _____________________;
s = s + n ;
_____________________;}
printf(“s = %d\n”, s );
return 0;
}
3.一个数如果恰好等于它的因子之和,这个数就称为完数。求100之内的所有完数。
#include
int main()
{ int n,s,j;
for(n=1;n<=____________;n++)
{ s=___________;
for(j=1;j if(n%j==0)s=s+j; if(______________)printf(" %d\n",s); } return 0; } 4.以下程序的功能是打印以下图形。 #include int main() { int i,j; for(i=1; i<=4;i++) { for(j=1;j<=___________;j++) printf(" "); for(j=1;j<=___________;j++) printf("*"); printf("\n"); }