厦门大学本科生公共课 《C 程序设计基础》 教材习题答案 第五章 循环结构程序设计
一、选择题
1.设有程序段”int k=10;while(k=0)k=k-1;”,则下面叙述正确的是D 循环体语句一次也不执行
2.设有程序段”int x=0,s=0;while(!x!=0)s+=++x;printf(“%d”,s);”则A 运行程序段后输出1
3.若有语句”int x=3;do{printf(“%d\n”,x-=2);}while(!(--x));” ,则该程序段C 输出的是 1 和-2
4.下面循环语句中,错误的是D int a=1,b=2;do b--while(b= =0);
5. 已知”int i=5;” ,下列do…while 循环语句的循环次数为C 5
do{printf(“%d\n”,i--);}while(i!=0);
6.循环语句”for(int i=0,j=10;i=j=10;i++,j--)” 的循环次数是D 无限
7.循环语句”while(int i=0;)i--;”的循环次数是A 0
8.下述有关break 语句的描述中,不正确的是 C break 语句用于if 语句的内嵌语句内,它结
束该if 语句
9.下面关于循环语句的描述中,错误的是B 循环体内必须同时出现break 语句和continue 语
句
10.以下不是死循环的是D for(;(c=getchar()!=’\n’);)printf(“%c”,c);
11.执行语句”for(i=0;i++<3;);”后,变量i 的值为C 4
12.语句”for(x=0,y=0;y!=1&&x<4;x++);”是C 循环4 次
13.与语句”while(!x);”等价的语句是A while(x= =0);
14.执行下列程序段后a 的值为B 2
int a=1,b=10;
do{
b-=a;a++;
}while(b--<0)
二、编程题
1.读入用户输入的6 个整数并显示其平均值。
#include
main()
{
float sum=0;
int tmp;
int i;
for(i=0;i<6;i++)
{
printf("输入第%d 个数:",i+1);
scanf("%d",&tmp);
sum=sum+tmp;
}
printf("平均值是:%f",sum/6);
}
2 .先读入一个正整数n ,然后计算并显示前n 个偶数的和。
#include
main()
{
int sum=0,n,i;
printf("输入一个正整数:");
第1 页/共9 页
厦门大学本科生公共课 《C 程序设计基础》 教材习题答案 第五章 循环结构程序设计
scanf("%d",&n);
for(i=1;i<=n;i++)
sum+=2*i;
printf("前n 个偶数和为:%d\n",sum);
}
3 .显示10~150 之间所有能被4 或5 整除的整数
#include
main()
{
int i;
for(i=10;i<=150;i++)
if(i%4==0||i%5==0)
printf("%d\t",i);
}
4 .显示Fibonacci 数列的前30 项(每行5 输出项)
#include
main()
{
int a,b,c,i;
a=1;b=1;
for(i=1;i<=30;i++)
{
c=a+b;
printf("%d\t",a);
a=b;
b=c;
if(i%5==0)
putchar('\n');
}
}
5 .显示Fibonacci 数列中值小于15000 的所有数据项(每行5 输出项)
#include