itgle.com

有以下程序:includemain(){int i,s=0; for(i=1;i有以下程序: #include <stdio.h> main() { int i,s=0; for(i=1;i<10;i+ =2) s+ =i+1; printf("%d\n",s); } 程序执行后的输出结果是( )。A.正整数1~9的累加和B.正整数1~10的累加和C.正整数1~9中奇数之和D.正整数1~10中偶数之和

题目
有以下程序:includemain(){int i,s=0; for(i=1;i<10;i+ =2) s+ =i+1; printf("%d\n",s

有以下程序: #include <stdio.h> main() { int i,s=0; for(i=1;i<10;i+ =2) s+ =i+1; printf("%d\n",s); } 程序执行后的输出结果是( )。

A.正整数1~9的累加和

B.正整数1~10的累加和

C.正整数1~9中奇数之和

D.正整数1~10中偶数之和


相似考题
参考答案和解析
正确答案:D
解析:通过for(i=1;i10;i+=2)可知,i取值为1~10的奇数,即1,3,5,7,9,i+1即为2,4,6,8,10。因此,程序的功能是计算并输出1~10中的偶数之和,s+=i+1就是累加这些偶数。
更多“有以下程序:#include<stdio.h>main(){int i,s=0; for(i=1;i<10;i+ =2) s+ =i+1; printf("%d\n",s ”相关问题
  • 第1题:

    有以下程序 main() {int i,s=0,t[]={1,2,3,4,5,6,7,8,9 }; for(i=0;i<9;i+=2) s+=*(t+i); printf("%d\n",s); }

    A.45

    B.20

    C.25

    D.36


    正确答案:C
    解析:此题考核的是指针与数组间的应用,数组可以通过实现对数组元素的操作,*(t+i)相当于t[i]。执行for()循环语句,i分别为0、2、4、6、8,有数组可知t[0]=1;t[2]=3;t[4]=5;t[6]=7;t[8]=9进行求和运算结果为25。

  • 第2题:

    有以下程序:include main( ){int i,s=0,t[] = {1,2,3,4,5,6,7,8,9};for(i=0;i<9;i+=2)

    有以下程序:#include <stdio.h>main( ){ int i,s=0,t[] = {1,2,3,4,5,6,7,8,9}; for(i=0;i<9;i+=2) s+=*(t+i); prinff("% d \n ",s);

    A.45

    B.20

    C.25

    D.36


    正确答案:C
    解析:程序中的*(t+i)相当于t[i]。由于for循环变量的增量为2,因此i分别取值0,2,4,6,8,因为t[0]=1,t[2]=3,t[4]=5,t[6]=7,t[8]=9,对其进行求和运算,结果为25。

  • 第3题:

    5、下面程序的运行结果是 。 #include <stdio.h> main() {char ch[7]={“12ab56”}; int i,s=0; for(i=0;ch[i]>=’0’&&ch[i]<=’9’;i+=2) s=10*s+ch[i]-‘0’; printf(“%d”,s); }


    5,9

  • 第4题:

    有以下程序 main ( ) { int i,s=0; for (i=1;i<10; i+=2) s+=i+1; print f ( "%d\n", s); } 程序执行后的输出结果是

    A.自然数1~9的累加和

    B.自然数1~10的累加和

    C.自然数1~9中奇数之和

    D.自然数1~10中偶数之和


    正确答案:D
    解析:本题考核的知识点是for循环语句和复合赋值+=运算符的应用。本题中,i赋初值为1,并对其每次进行加2操作,即i每次均为1~10之间的奇数,s+=i+1,即s=s+i+1,相当于s等于原来的s每次加上1~10之间的偶数,直到i10不成立.当i=1时,s=0+1+1=2;当i=3时,s=2+3+1=2+4;当i=5时,s=2+4+5+1=2+4+6;当i=7时,s=2+4+6+7+1=2+4+6+8;当i=9时,s=2+4+6+8+9+1=2+4+6+8+10;当i=11时,i10不成立,结束循环。所以,4个选项中选项D符合题意。

  • 第5题:

    下面程序的运行结果是【 】。

    main()

    { int i=0,j=10,k=2,s=0;

    for(;;)

    {i+=k;

    if(i>j)

    {printf("%d\n",s);

    break; }

    s+=i; } }


    正确答案:30
    30 解析:考查for循环的使用。题目中for(;;)表示:for循环的初始化表达式,条件表达式和修正表达式都省略了,表示进行for循环和for循环的终止都没有限制。