5.11 当执行以下程序段后,i的值是____、j的值是____、k的值是____。
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++);
答案:5、4、6
5.12 以下程序段的输出结果是____。
int k,n,m;
n=10; m=1; k=1;
while(k<=n) m*=2;
printf("%d\\n",m);
答案:死循环
5.13 以下程序的输出结果是____。
main()
{ int x=2;
while(x--);
printf("%d\\n",x);
}
答案:-1
5.14 以下程序段的输出结果是____。
int i=0,sum=1;
do { sum+=i++; }while(i<5);
printf("%d\\n",sum);
答案:11
5.15 有以下程序段:
s=1.0;
for(k=1; k<=n; k++) s=s+1.0/(k*(k+1));
printf("%f\\n",s);
请填空,使下面的程序段的功能完全与之等同。
s=0.0;
____;
k=0;
do
{ s=s+d;
____;
d=1.0/(k*(k+1));
}
while(____);
printf("%f\\n",s);
答案:d=1.0、k++、k<=n
5.16 以下程序的功能是:从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。请填空。
main()
{ float x,amax,amin;
scanf("%f",&x);
amax=x; amin=x;
while(____)
{ if(x>amax) amax=x;
if(____)amin=x;
scanf("%f",&x);
}
printf("\\namax=%f\\namin=%f\\n",amax,amin);
}
答案:x>=0、x