有以下程序段,且变量已正确定义和赋值。
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(______)s=s+1.0/(k*(k+1)); k++;
printf("s=%f\n\n", s);
参考答案:k<=n
解析: 本题要求将一个for循环改成while循环。首先要保证循环条件相同即k<=n。在for循环中,每次执行循环之后,循环控制变量k都会加1,而while循环则没有,故需在循环体中增加改变k数值的语句“k++; ”。