2009-2010学年度《计算机C语言程序设计》复习参考资料
9、当a=1,b=2,c=3,以下if语句执行后,a,b,c中的值分别是 3 2 2 。
if(a>c)
b=a;a=c;c=b;
第11页 共38页
2009-2010学年度《计算机C语言程序设计》复习参考资料
习题四 循环结构
一、选择题
1、以下程序段的输出结果是 D A) 9 B)1 C)11 D)10 int k,j,s;
for(k=2;k<6;k++,k++) { s=1;
for (j=k;j<6;j++) s+=j; }
printf(“%d\\n”,s);
2、 以下程序段的输出结果是 C A) 12 B)15 C)20 D)25 int I,j,m=0; for(I=1;I<=15;I+=4) for(j=3;j<=19;j+=4) m++; printf(“%d\\n”,m);
3、 以下程序段的输出结果是 B A) 10 B)9 C)10 D)9 9 8 9 8 8 7 8 7 7 6 int n=10; while(n>7) { n--;
printf(“%d\\n”,n); }
4、 以下程序段的输出结果是 C A) 1 B)3 0 C)1 -2 D)死循环 int x=3; do
第12页 共38页
2009-2010学年度《计算机C语言程序设计》复习参考资料
{ printf(“=”,x-=2); }while(!(--x));
5、以下程序段的输出结果是 C A) 15 B)14 C)不确定 D)0 main() { int I,sum;
for(I=1; I<6;I++)sum+=sum; print(“%d\\n”,sum); }
6、以下程序段的输出结果是 B A) 741 B)852 C)963 D)875421 main() { int y=10; for(;y>0;y--) if(y%3==0)
{ printf(“%d”,--y);continue; } }
7、若x是int型变量,以下程序段的输出结果是 D A) **3 B)##3 C)##3 D)**3##4 ##4 **4 **4##5 **5 **5 ##5
for(x=3;x<6;x++)
printf((x%2)?(“**%d):(“##%d\\n”),x);
8、以下程序段的输出结果是 C
A) *#*#*#$ B)#*#*#*$ C)*#*#$ D)#*#*$
main() { int I;
for (I=1;I<5;I++) { if(I%2) printf(“*”); else continue; printf(“#”); }
printf(“$\\n”);
第13页 共38页
2009-2010学年度《计算机C语言程序设计》复习参考资料
}
9、以下叙述正确的是 D
A) do_while语句构成的循环不能用其他语句构成的循环来代替. B) do_while语句构成的循环只能用break语句退出.
C) 用do_while语句构成循环时,只有在while后的表达式为非零时结束循环. D) 用do_while语句构成循环时,只有在while后的表达式为零结束循环. 10、以下程序段的输出结果是 D
A) 39 81 B)42 84 C)26 68 D)28 main() { int x,I;
for(I=1;I<=100;I++) { x=I;
if(++x%2==0) if(++x%3==0) if (++x%7==0) printf(“%d”,x); }
printf(“\\n”); }
二、填空题
1、当执行以下程序段后,I的值 5 ,j是的值 4 Int a,b,c,d,I,j,k; a=10;b=c=d=5; I=j=k=0; for(;a>b;++b) I++; while(a>++c) j++; do k++; while(a>d++); 2、以下程序段的输出结果是 -1 main() { int x=2; while (x--); printf(“%d\\n”,x); }
3、以下程序段的输出结果是 11
70 ,k是的值是 6 第14页 共38页
2009-2010学年度《计算机C语言程序设计》复习参考资料
int I=0,sum=1;
do {sum+=I++;}while(I<5); printf(“%d\\n”,sum); 4、有以下程序段 s=1.0;
for(k=1;k<=n;k++) s=s+1.0/(k*k+1)); printf(“%f\\n”,s);
请填空,使下面的程序段的功能完全与之等同. S=0.0; d=1.0 ; k=0; do { s=s+d; k++;
d=1.0/(k*(k+1)); }
while ( k<=n ); printf(“%f\\n”,s);
5、以下的程序的功能是:从键盘上若干学生的成绩,统计并输出最高成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入.请填空.
main()
{ float x,amax,amin;
scanf(“%f”,&x);
amax=x; amin=x; while( x>=0 ) { if(x>amax) amax=x; if( x
printf(“\\namax=%f\\n”,amax,amin); }
第15页 共38页