更多“下列求100以内所有偶数之和的程序是否正确? sum = 0 i = 0 while i < 100: if i % 2 == 0: sum += i i += 2 print sum”相关问题
  • 第1题:

    下列程序运行后,单击窗体,输出结果为( )。 Private Sub Form_Click() Dim i As Integer, sum As Integer sum = 0 For i = 2 To 10 If i Mod 2 <> 0 Andi Mod 3 = 0 Then sum = sum + i End If Next i Print sum End Sub

    A. 12

    B. 18

    C. 24

    D. 30


    参考答案:A 

  • 第2题:

    设有以下程序:

    main()

    {int i,sum=0;

    for(i=2;i<10;i++)

    { if((i%2)==0)

    continue;

    sum+=i;}

    printf("%d\n",sum);

    }

    程序执行后的输出结果是( )。


    正确答案:24
    24 解析:continue语句功能:结束本次循环(注:不是终止整个循环),即跳过循环体中continue语句后面的语句,开始下一次循环。

  • 第3题:

    下列程序段的输出结果是【】。 include void main() {inti=10,sum=0;do{sum=+sum+i;i=i

    下列程序段的输出结果是【 】。

    include<iostream.h>

    void main()

    {int i=10,sum=0;

    do

    {

    sum=+sum+i;

    i=i-2;

    }while(i>=2);

    cout<<sum<<end1;

    }


    正确答案:30
    30

  • 第4题:

    以下C程序的运行结果为______。main(){ int i=1,sum=0; loop:if(i<=10) { sum+=i; i++; goto loop; } printf("sum=%d\n",sum);}

    A.sum=10

    B.sum=55

    C.sum=100

    D.sum=88


    正确答案:B

  • 第5题:

    有如下程序: Private Sub Form_Click( ) Dim i As Integer, Sum As Integer Sum = 0 For i = 2 To 10 If i Mod 2=0 And i Mod 3<>0 Then Sum = Sum + i End If Next Print Sum End Sub 程序运行后,单击窗体,输出结果为

    A.12

    B.30

    C.24

    D.18


    正确答案:C
    解析:纵观题目可以看出,本题程序段的作用是将从2到10中是2的倍数但不是3的倍数的数加求然后输出。在2到10中满足条件的数字是2,4,8,10,所以和是24,故本题的正确答案是选项C。

  • 第6题:

    有如下程序:: Private Sub Form. Click() Dim i As Integer,sum As Integer sum=0 For i=2 To 10 If i Mod 2 <>0 And i Mod 3=0 Then sum=sum+i End If Next i Print sum End Sub 程序运行后,单击窗体,输出结果为______。

    A. 12

    B.30

    C.24

    D.18


    正确答案:A
    解析:i Mod2>0,就是i不能被2整除,而i Mod 3=0,就是i要能被3整除。所以本题就是求2~10之间,能被3整除但不能被2整除的数之和。而2~10之间符合条件的数为3和9,它们的和为12。

  • 第7题:

    以下能够正确计算1+2+3+…+10的程序是

    A.Private Sub Command1_Click() Sum=0 ForI=1 To 10 Sum=Sum+I Next I Print Sum End Sub

    B.Private Sub Command1_Click() Sum=0,I=1 Do While I<=10 Sum=Sum+I I=I+1 Print Sum End Sub

    C.Private Sub Command1_Click() Sum=0: I=1 Do Sum=Sum+I I=I+1 Loop While I<10 Print Sum End Sub

    D.Private Sub Command1_Click() Sum=0: I=1 Do Sum=Sum+I I=I+1 Loop Until I<10 Print Sum End Sub


    正确答案:A
    解析:本题考查For循环与 Do循环控制语句。A选项进行10次循环,分别将1之10累加给Sum,故正确。选项B缺少Loop关键词,否则也是正确的。选项C与D由于受条件“lclo”限制,Do循环只能进行一次。

  • 第8题:

    下面程序用于计算矩阵的两条对角线上的元素之和。补充下列语句,实现该功能。

    include<iostream.h>

    void main(){

    int a[3],[3]={9,8,7,6,5,4,3,2,1};

    int sum1=0,sum2=0,i,j;

    for(i=0;i<3;i++)

    for(j=0;j<3;j++)

    if(i==j)sum1+=a[i][j];

    for(i=0;i<3:i++)

    for(j=2;【 】;j--)

    if(i+j==2)sum2+=a[i][j];

    }


    正确答案:j>=0
    j>=0

  • 第9题:

    有如下程序: Private Sub Form_CHck() Dim i As Integer,sum As Integer sum=0 For i=2 TO 10 If Mod 2 <>And i Mod 3=0 Then sum=sum+i End If Next i Print sum End Sub 程序运行后,单击窗体,输出结果为______。

    A.12

    B.30

    C.24

    D.18


    正确答案:A
    解析:Mod2>0,就是i不能被2整除,而iMod 3=0,就是i要能被3整除。所以本题就是求2~10之间,能被3整除但不能被2整除的数之和。而2-10之间符合条件的数为3和9,它们的和为12。

  • 第10题:

    下列语句段中不是死循环的是( )。

    A.int i=100 While (1) { i=i%100+1 if(i==20) break; }

    B.int i sum=O; for (i=l;;i++) sum=sum +l;

    C.int k=0; do { ++K }while(k<=O);

    D.int s=3379; while (s+ +%2+3%2)s++;


    正确答案:A

  • 第11题:

    以下程序是一个函数,功能是求二阶矩阵(m行n列矩阵)的所有靠外侧的各元素值之和。(本程序中二阶矩阵用一维数组来表示。)

    例如,矩阵为:

    3 0 0 3

    2 5 7 3

    1 0 4 2

    则所有靠外侧的各元素值之和为3+0+0+3+2+3+1+0+4+2=18。

    add(int m,int n,int arr[])

    { int i,j,sum=0;

    for(i=0;i

    for(j=0;j<N;J++)

    sum=sum+ (7) ;

    for(j=0;j

    for(i=1; (8) ;i++)

    sum=sum+arr[i*n+j];

    return(sum);

    }


    正确答案:
    3.(7) arr[i*n+j](或者arr[i*10+j])

     (8) i<M-1(或者I<=M-2)

  • 第12题:

    以下程序的运行结果是().  main()  {  int  i=1,sum=0;  while(i<10)  sum=sum+1;i++;     printf("i=%d,sum=%d",i,sum);  }

    • A、i=10,sum=9
    • B、i=9,sum=9
    • C、i=2,sum=1
    • D、运行出现错误

    正确答案:D

  • 第13题:

    下列语句段中不是死循环的是()。

    A、intI=100;while(1){I=I0+1;if(I=20)break;}

    B、intI;sum=0;for(I=1;;I++)sum=sum+1;

    C、intk=0;do{++k;}while(k>=0);

    D、ints=3379;while(s++%2+3%2)s++;


    参考答案:A

  • 第14题:

    下列程序的输出结果是______。 #define A 100 main() { int i=0,sun=0; do{ if(i==(i/2)*2)continue; sum+i; }while(++i<A) ; printf("%d\n",sun); }

    A.2500

    B.2050

    C.4

    D.0


    正确答案:A
    解析:本题程序的功能是求1到99之间(包括1和99)所有奇数之和。程序中的while循环的终止条件为++i=100,在while循环体内,如果i是偶数,则执行continue,跳过这一次循环,执行下—次循环,否则求和。最后输出的值是1到99之间(包括1和99)所有奇数之和(1+99)*50/2=2500。

  • 第15题:

    有如下程序,可以得到0到100之间所有偶数之和。 DIM I AS INTEGER DIM SUM AS INTEGER SUM = 0 FOR I =0 TO 100 STEP 2 SUM = SUM + I NEXT I DEBUG. PRINT I DEBUG. PRINT SUM 程序运行后,变量I和SUM的值是( )。

    A.100和2450

    B.102和2550

    C.104和2650

    D.106和2850


    正确答案:B
    解析:该程序完成0到100之间所有偶数的求和操作。当把100加入变量SUM后,SUM的值为2550,而此时I再加2,值为102,超出循环终值,结束循环。

  • 第16题:

    下列程序的输出结果是______。 #define A 100 main() { int i=0,sum=0; do{ if(i=(i/2)*2)continue; sum+=i; }while(++i<A); print("%d\n",sum); }

    A.2500

    B.2050

    C.4

    D.0


    正确答案:A
    解析:本题程序的功能是求1到99之间(包括1和99)所有奇数之和。程序中的while循环的终止条件为++i=100,在 while循环体内,如果i是偶数,则执行continue,跳过这一次循环,执行下—次循环,否则求和。最后输出的值是1到 99之间(包括1和99)所育奇数之和(1+99)*50/2=2500。

  • 第17题:

    下列各循环语句中,不是死循环的是( )。

    A.int i=100; while(1){ i=i%100+1; if(i==20) break; }

    B.int i,sum=0; for(i=1;;i++) sum=sum+1;

    C.int k=0; do{ ++k; }while(k>=0);

    D.int s=3379; while(s++%2+3%2) s++;


    正确答案:A
    解析:分析各个选项。选项A中,当变量i的值等于20时,会执行break;语句,即退出整个while循环体。所以选项A的循环语句不是死循环。其他各个选项的循环语句中,没有循环退出点,所以都是死循环。

  • 第18题:

    有如下程序: Private Sub Form_Click() Dim i As Integer, Sum As Integer sum=0 For i=2 To 10 If i Mod 2<>0 And i Mod 3=0 Then sum=sum+i End If Next i Print sum End Sub 程序运行后,单击窗体,输出结果为______。

    A.12

    B.30

    C.24

    D.18


    正确答案:A
    解析:本题程序的功能是:将从2到10中既是奇数(i Mod 2>0)又是3的倍数(i Mod 3=0)的数求和,在2到10中满足条件的数字是3,9,其和是12。

  • 第19题:

    下列程序的输出结果是______。 #define A 100 main() { int i=0,sum=0; do{ if(i==(i/2)*2) continue; sum+=i; }while(++i<A) ; printf("%d\n",sum);

    A.2500

    B.2050

    C.4

    D.0


    正确答案:A
    解析:本题程序的功能是求1到99之间(包括1和99)所有奇数之和。程序中的while循环的终止条件为++i=100,在while循环体内,如果i是偶数,则执行continue,跳过这依次循环,执行下一次循环,否则求和。最后输出的值是1到99之间(包括1和99)所有奇数之和(1+99)*50/2=2500。

  • 第20题:

    执行下列程序,其输出为( )。 int Sum,j; Sum=0; j=0; do{ j++; for(int i=5:i>j;i--). Sum=Sum+(i+j); {while(j<11=; } }

    A.45

    B.50

    C.60

    D.65


    正确答案:C

  • 第21题:

    以下能够正确计算1+2+3+…+10的程序是

    A.Private sub Command1_Click( ) sum=0 For 1=1 To 10 Sum=sum+1, Next I Print Sum End Sub

    B.Private sub Command1_Click( ) Sum=0,I=1 Do While l<=10 Sum=Sum+1 I=I+1 Print Sum End Sub

    C.Private Sub command1_click( ) Sum=0:I=1 Do Sum=Sum+1 I=I+1 Loop While I<10 Print Sum End Sub

    D.Private Sub command1_Click( ) Sum=0:I=1 Do Sum=Sum+1 l=I+1 Loop Until I<10 Print Sum End Sub


    正确答案:A
    解析:A选项进行10次循环,分别将1至10累加给Sum,故正确。选项B缺少Loop关键词,否则也是正确的。选项C与D由于受条件“Iclo'’限制,Do循环只能进行一次。

  • 第22题:

    试题1

    下列程序的功能是:找出所有100以内(含100)满足i,i+4,i+10都是素数的整数i(i+10也在100以内)的个数cnt以及这些i之和sum。请编写函数countvalue()实现程序要求,最后调用函数writeDat()把结果cnt和sum输出到文件out.dat中。

    注意:部分源程序已给出。

    请勿改动主函数main()和函数writeDAT()的内容。

    试题程序:

    #include <stdio.h>

    int cnt, sum;

    int isPrime(int number)

    {

    int i, tag = 1;

    for (i=2; tag && i<=number/2; i++)

    if (number%i == 0)

    tag = 0;

    return tag;

    }

    void countValue()

    {

    }

    void writeDat()

    {

    FILE *fp;

    fp = fopen("out.dat", "w");

    fprintf(fp, "%d\n%d\n", cnt, sum);

    fclose(fp);

    }

    void main()

    {

    cnt = sum = 0;

    countValue();

    printf("满足条件的整数的个数=%d\n", cnt);

    printf("满足条件的整数的和值=%d\n", sum);

    writeDat();


    正确答案:

    试题1答案:
    void countvalue()
    {
    int i;
    for(i=2;i<=90;i++)
    if(isPrime(i) && isPrime(i+4) && isPrime(i+10))
    {
    cnt++;
    sum+=i;
    }
    } }
    试题1分析:
    该程序属于按条件查找数字的题目,考核的知识点为:(1)素数的判定;(2)统计个数并求和。
    本题的解题思路是:题目要求的筛选范围是“所有100以内(含100)满足i、i+4、i+10都是素数的整数i(i+10也在100以内)”,由于最小的素数是2,且i+10要在100以内(含100),所以筛选的范围是2~90。
    题目要求的筛选条件是“满足i、i+4、i+10都是素数的整数i”。在答题之前,应先通读题目已给出的源程序,在我们要实现的函数countvalue()之前给出一个在题目中从未提及的函数isPrime()。仔细分析这个函数的代码不难发现,它实现了从2~number/2内寻找能整除number的数,如果找到就使变量tag为0,此时循环条件将不成了,最终返回0,如果找不到,变量tag为1,返回1.这段代码实现的是判断一个数是够是素数。所以在函数中对筛选条件可以简化为if(isPrime(i) && isPrime(i+4) && isPrime(i+10))。
    程序的流程是:调用countvalue()函数对数据进行处理,最后由writeDAT()函数将结果写入文件out.dat中。
    在countvalue()函数中,For循环的功能是判断i、i+4、i+10是否都为素数,若在素数则将i累加到sum中,同时个数cnt加1,函数结束。

     

  • 第23题:

    若变量inti,intsum=0,要求程序段完成求1加到100的和的,能完成此操作的程序段不正确的是()

    • A、for(i=1;i<=100;i++)sum+=i;
    • B、for(i=1;i<=100;i++)sum=i;
    • C、for(i=1;i<=100;i++)sum=sum+i;
    • D、for(i=0;i<=100;i++)sum+=i;

    正确答案:B

  • 第24题:

    单选题
    若变量inti,intsum=0,要求程序段完成求1加到100的和的,能完成此操作的程序段不正确的是()
    A

    for(i=1;i<=100;i++)sum+=i;

    B

    for(i=1;i<=100;i++)sum=i;

    C

    for(i=1;i<=100;i++)sum=sum+i;

    D

    for(i=0;i<=100;i++)sum+=i;


    正确答案: D
    解析: 暂无解析