问题 填空题

有以下程序段,且变量已正确定义和赋值
for(s=1.0,k=1;k<=n;k++)s=s+1.0/(k*(k+1));
printf("s=%f\n\n",s);
请填空,使下面程序段的功能与之完全相同
S=1.0;k=1;
while( [8] )s=s+1.0/(k*(k+1)); [9]
printf("s=%f\n\n",s);

答案

参考答案:[8] k<=n
[9] k++

解析: 本题要求将一个for循环改成while循环。首先要保证循环条件相同,在for循环中,每次执行循环之后,循环控制变量k都会加1,而while循环则没有,故需在循环体中增加改变k数值的语句“k++”。

判断题
单项选择题