这个题目有点问题,上面的for后面的k初始值应该改为0,因为原题中第一次k后是从2开始计算的了
宋玥晖 核心会员 2019-03-06 21:28:10
32 2 0
问题来自: while循环和do循环
有以下程序段:       
s=1.0;
for(k=1;k<=n;k++) s=s+1.0/(k*(k+1));
printf("%f\n",s);
请填空,使以下程序段的功能与上面的程序段完全相同。
s=1.0;k=1;
while( __【9】__ )
{ s=s+1.0/(k*(k+1)); k=k+1; }
printf("%f\n",s); 。
A. k<=n
B. k<n
C. k++<=n
D. k++<n
答案:A
解析:第一段程序的功能是,k从1到n循环,每次循环中对s进行赋值。由于第二段程序中初始化、自增都写好了,所以答案应该就是第一段程序中for循环里面的循环条件。因此结果是k&lt;=n。

共 2 个回答

您还没有登录,所以不能回复该问题
我要回复

  • 0

    点赞

  • 扫一扫分享朋友圈

    二维码

  • 分享

相关问题