更多“下面程序的功能是计算:至50中是7的倍数的数值之和,请选择填空. main() { int i,sum= 0; for(i=1;i<=50;i++) if(__) sum+=i; printf("%d",sum); }”相关问题
  • 第1题:

    有以下程序: int fun(int x[],int n) {static int sum=0,I; for(i=0;i<n;i++)sum+=x[i]; return sum; } main() {int a[]={1,2,3,4,5},b[]={6,7,8,9},s=0; s=fun(a,5)+fun(b,4);printf("%d\n",s); } 程序执行后的输出结果是( )。

    A.45

    B.50

    C.60

    D.55


    正确答案:C
    解析:fun函数中用static声明的局部变量sum的值在函数调用结束后不消失而保留原值,即占用的存储单元不释放,在下一次调用该函数时,该变量已有值,就是上一次函数调用结束时的值。

  • 第2题:

    下列程序的输出结果是______。 #define A100 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。

  • 第3题:

    设有以下程序:

    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语句后面的语句,开始下一次循环。

  • 第4题:

    以下程序执行后sum的值是 ( ) main( ) { int i,sum; for(i;i<6;i+ +)sum+=i; printf("%d\n",sum); }

    A.15

    B.14

    C.不确定

    D.0


    正确答案:C

  • 第5题:

    以下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

  • 第6题:

    下面程序执行的结果是【 】。 include using namespace std; void main(){ int sum=0; i

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

    include <iostream>

    using namespace std;

    void main(){

    int sum=0;

    int array[6]={1,2,3,4,5,6};

    int *p;

    p=&array[0];

    for(int i=0;i<6;i++){

    sum=sum+*p;

    p++;

    }

    cout<<sum;

    }


    正确答案:21
    21 解析:本题用数组地址来访问数组内容,通过数组指针来操作数组内容,依次取出数组内容进行加和,然后进行输出。

  • 第7题:

    以下程序执行后sum的值是 ______。 main() { int i,sum; for(i=1;i<6;i++)sum+=i; printf("%d\n",sum); }

    A.15

    B.14

    C.不确定

    D.0


    正确答案:C
    解析:变量sum在使用时未赋初值,所以无法确定sum最终的值。

  • 第8题:

    请补充main函数,该函数的功能是:把1~100间的所有素数保存在数组aa中,然后输出这些素数并计算它们的和。

    注意:部分源程序给出如下。

    请勿改动主函数main和其他函数中的任何内容,仅在 main函数的横线上填入所编写的若干表达式或语句。

    试题程序:

    include<stdio.h>

    main()

    {

    int n, i, j, k, flag, sum;

    int aa [50];

    sum=O;

    k=O;

    clrscr ();

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

    {

    【 】;

    for (j=2; j<i&&flag; j++)

    if (i%j==O)

    {

    【 】;

    }

    if (flag)

    {

    sum+=i;

    【 】;

    }

    }

    printf("\n*** prime number ***\n");

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

    {

    if (i%10==0)

    printf ("\n");

    printf ("%4d", aa [i]);

    }

    printf ("\nsum=%d", sum);

    }


    正确答案:flag=1 flag=0 aa[k+++]=i
    flag=1 flag=0 aa[k+++]=i 解析:第一空:由后面的if句可以看出,当nag为1时,当前数是素数,所以此处先假设当前数为素数,即置flag为1,再进行判断,如果不是素数,则再将fflag清零。第二空:如果一个数能被除了1和其自身之外的数整除,即余数为0,则这个数不是素数。如果当前数不是素数,则将flag清零。第三空:如果当前数是素数,则将它保存在数组bb中。

  • 第9题:

    下列给定程序中,函数fun()的功能是:输出M行N列整数方阵,然后求两条对角线上的各元素之和,返回此和数。

    请改正程序中的错误,使它能得出正确的结果。

    注意:不要改动main函数,不得增行或删行,也不得更改程序的结构.

    试题程序:

    include <conio.h>

    include <stdio.h>

    define M 5

    /**********************************/

    iht fun(int n, int xx[ ][ ])

    { int i, j, sum=0;

    printf("\nThe %d x %d matrix:\n",M,M);

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

    { for (j=0; j<M; j++)

    /**********************************/

    printf("%4f",xx[i][j]);

    printf("\n");

    }

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

    sum+=xx[i][i]+xx[i][n-i-1];

    return(sum);

    }

    main ()

    { int aa[M][M]={{1,2,3,4,5},{4,3,2,1,0},

    {6,7,8,9,0},{9,8,7,6,5},{3,4,5,6,7}};

    clrscr();

    printf("\nThe sum of all elements on 2

    diagnals is %d",fun(M, aa));

    }


    正确答案:(1)错误: int fun(iht nintxx[][]) 正确: int ltm(iht mint r.x[][M]) (2)错误: printf("%4ff'xx[i]fj]); 正确: printf("%4d"xx[i][j]);
    (1)错误: int fun(iht n,intxx[][]) 正确: int ltm(iht mint r.x[][M]) (2)错误: printf("%4f,f',xx[i]fj]); 正确: printf("%4d",xx[i][j]); 解析:该题错误比较隐蔽,一般的C语言上机考试很少涉及printf顺数中的错误,在这里,我们只要明白“d”和“f”的区别就OK了。格式字符d表示:以带符号的十进制形式输出整数(正整数不输出符号);格式字符f表示;以小数形式输出单、双精度,隐含输出6位小数。

  • 第10题:

    以下程序执行后Sum的值是(48)。main(){ int i,sum; for(i=1;i<6;i++)sum+=i; printf("%d\n",sam);}

    A.15

    B.14

    C.不确定

    D.0


    正确答案:C
    解析:整个循环的过程中,sum一直进行累加,根据循环的条件,i从1变化到5,sum最终的值为:1+2+3+4+5=15。所以,这道题很容易做出选择A选项的判断。但是c语言中,如果不在定义变量的时候赋初始值,那么该变量的值将会是一个随机数。所以,本题的正确答案是C。

  • 第11题:

    已经int i;int sum=0,要求求1加到10的和,能完成此操作的程序段正确的是()。

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

    正确答案:C

  • 第12题:

    以下程序执行后sum的值是()。 main(){ int i,sum; for(i=1;i<6;i++) sum+=i; printf("%d/n",sum); }

    • A、15
    • B、14
    • C、不确定
    • D、0

    正确答案:C

  • 第13题:

    有以下程序

    int fun(int x[],int n)

    {static int sum=0,i;

    for(i=0;i<n;i++) sum+=x[i];

    return sum;

    }

    main()

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

    s=fun(a,5)+fun(b,4);printf("%d\n",s);

    }

    程序执行后的输出结果是

    A.45

    B.50

    C.60

    D.55


    正确答案:C
    解析:内部静态变量是始终存在的,当函数被调用退出后,内部静态变量会保存数据,再次调用该函数时,以前调用时的数值仍然保留着。Fun(a,5)的值是15,再次调用后sum=15,所以Fun(b,4)=45,s=45+15=60。

  • 第14题:

    以下程序的输出结果是【 】。include main() {int i,j,sum; for(i=3;i>=-1;i-) (sum=0; fo

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

    include<stdio.h>

    main()

    {int i,j,sum;

    for(i=3;i>=-1;i-)

    (sum=0;

    for(j=1;j<=i;j++) sum+=i*j;

    }

    printf("%d\n,sum);

    }


    正确答案:√
    1 解析:本题考查的是for循环嵌套。外循环i变量从3递减到1,内循环变量j在每轮外循环的作用下从1递增到i,并在每轮外循环结束时,通过内循环求得sum的值,但由于外循环体的第一条语句是将变量sum初始化为0,所以每轮外循环结束时求得的sum值均被下一轮外循环执行时重新初始化为0,只有在最后一轮,当i=1时,内循环求得stan=1,跳出内循环,i的值减1变为0,不满足i>=1这个条件,结束外循环,此时输出sum的值为1。

  • 第15题:

    以下程序的输出结果是【】。 include using namespace std; int main(){ int sum,i; for(

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

    include<iostream>

    using namespace std;

    int main(){

    int sum,i;

    for(sum=0,i=1;i<5;i++)sum+=i;

    cout<<sum<<endl;

    return 0;

    }


    正确答案:10
    10 解析:本题程序实现的是计算1+2+3+4的和,因此最后输出为10。

  • 第16题:

    下列程序的输出结果是______。

    main ()

    { int i,sum;

    for(i=1;i<7;i++)

    sum+=i;

    printf("%d",sum);

    }


    正确答案:无定值
    无定值 解析:for(i=1;i7;i++)决定了循环次数为6次,每次执行的操作是sum+=i,但由于sum没有初始化,并不知道sum的初值是多少,所以结果无定值。

  • 第17题:

    有如下程序 main() { int i,sum; for(i=1;i<=3;sum++)sum+=i; printf("%d\n",sum); } 该程序的执行结果是______。

    A.6

    B.3

    C.死循环

    D.0


    正确答案:C
    解析:在循环过程中,i的值一直没有被改变,所以这是一个死循环。

  • 第18题:

    下列程序的执行结果是______。 public class ex3 { public static void main(String[] args) { int sum=0; for(int i=1;i<=100;i++) { sum+=i; } System.out.println("sum="+sum); }

    A.sum=5050

    B.sum=4950

    C.sum=100

    D.sum=1


    正确答案:A

  • 第19题:

    以下程序执行后sum的值是( )。 main { int i,sum; for(i=1;i<6;i++)sum+=i: printf("1%d\n",sum): }

    A.15

    B.14

    C.不确定

    D.0


    正确答案:C
    sum+=i等价于sun+i,在本题中sum没有赋初值,而题中只输出sum的值,因此整个结果为不确定值。

  • 第20题:

    下列程序的输出结果是______。 #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。

  • 第21题:

    有以下程序: include using namespace std; int main() {int i=1,sum=0;Loop:if(i<=20

    有以下程序:

    include<iostream>

    using namespace std;

    int main()

    {

    int i=1,sum=0;

    Loop:if(i<=20)

    {

    sum+=i;

    i++;

    goto Loop;

    }

    cout<<sum<<end1;

    return 0;

    }

    该程序运行后的输出结果是【 】。


    正确答案:210
    210 解析:本题是goto跳转语句的应用。程序中,如果满足条件“i=20”,则执行语句“sum+=i;i++;”然后,又跳转到Loop处。直到条件“i=20”不满足。由此可知,此程序的功能是统计1~20的总和,即210。

  • 第22题:

    若变量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

  • 第23题:

    以下程序的运行结果是().  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

  • 第24题:

    单选题
    以下程序执行后sum的值是()。 main(){ int i,sum; for(i=1;i<6;i++) sum+=i; printf("%d/n",sum); }
    A

    15

    B

    14

    C

    不确定

    D

    0


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