更多“设有以下程序:main(){int i,sum=0;for(i=2;i<10;i++){ if((i%2)==0)continue;sum+=i;}printf("%d\n",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(a,5)的值是15,再次调用后sum=15,所以Fun(b,4)=45,s=45+15=60。

  • 第2题:

    有以下程序: void sum(int *a) { a[0]= a[1]; } main() { int aa[10]={1,2,3,4,5,6,7,8,9,10},i; for(i=2;i>=0;i--)sum(&aa[i]); printf("%d\n",aa[0]); } 执行后的输出结果是 ______。

    A.4

    B.3

    C.2

    D.1


    正确答案:A
    解析:分析函数调用即得。

  • 第3题:

    以下程序的输出结果是【】。 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。

  • 第4题:

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

    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的初值是多少,所以结果无定值。

  • 第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题:

    以下程序的输出结果是#include <stdio.h>main(){ int i,j,sum; for(i=5;i>=1;i--) { sum=0; for(j=i;j<=i;j++) sum+=i*j; } printf("%d\n",sum);}


    正确答案:√
    本题考查对程序运行结果的计算。本程序的目的是输出sum的值,在输出sum值之前,需要进行一个for循环,该循环内部有一个for子循环。外层for语句的循环变量i的初始值为5,循环条件为i>=1,循环变量增值为-1。外层for语句每循环一次,都会将sum值重新赋0,所以,只要计算最后一次循环结束后sum的值作为输出即可。当i=1时,外层for语句进行最后一次循环,sum的值由内层for语句决定。内层for语句循环变量为j,初始值为j=i,循环条件为j<=i,循环变量增值为+1,由此可见,内层for语句只运行一次,结果就是sum=i*j。当i=1时,j=1,sum=1。

  • 第8题:

    有以下程序,程序执行后,输出结果是【】include void fun(int*A) {a[0]=a[1];} main() {i

    有以下程序,程序执行后,输出结果是【 】

    include<stdio.h>

    void fun(int*A)

    { a[0]=a[1];}

    main()

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

    for(i=2;i>1=0;i-) fun(&a[i]);

    for(i=0;i<10;i++) printf("%d,a[i]);

    printf("\n");

    }


    正确答案:7777654321
    7777654321 解析:本题主要考查函数的调用,第—次调用把数组元素a[2]的地址赋给a,此时a[1]即是原数组的a[3]等于7,再执行赋值语句a[0]=a[1],则a[0]和a[1]中的值都是7,然后再把这个值返回给a[2]同样地第二次调用的时候函数返回值也是7,第三次调用返回值也是7,因此数组的前4个元素,即对a[0]、a[1]、a[2]和a[3]的值都为7,当执行第二个for循环时输出数组中所有元素的值7777654321。

  • 第9题:

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

  • 第10题:

    有下列程序: 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[3]={1,2,3,4,5),b[3]={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
    在函数intfun(intx[],intn)的定义中,变量sum为一个静态局部变量。由于在整个程序运行期间,静态局部变量在内存中的静态存储中占据着永久的存储单元。函数intfun(intx[],intn)的功能是求出数组x[]各个元素的和,所以在主函数中,调用函数fun(a,5)后,变量sum=1+2+3+4+5=15,当再次调用fun(b,4)后,变量sum=15+6+7+8+9=45,所以s=15+45=60。

  • 第11题:

    以下程序执行后,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

  • 第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题:

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

  • 第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题:

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

    A.15

    B.14

    C.不确定

    D.0


    正确答案:C

  • 第16题:

    有以下程序:include void sum(int *a){a[0]=a[1];}main(){int aa[10]={1,2,3,4,5,6,7,

    有以下程序: #include <stdio.h> void sum(int *a) { a[0]=a[1]; } main() { int aa[10]={1,2,3,4,5,6,7,8,9,10},i; for(i=2;i>=0;i--) sum(&aa[i]); printf("%d\n",aa[0]); } 执行后的输出结果是( )。

    A.4

    B.3

    C.2

    D.1


    正确答案:A
    解析:该程序通过main函数循环凋用sum函数。当i=2时,将实参aa[2]的地址传递给形参,此时a[0]=a[1]=aa[3]=4,即aa[2]=4;当i=1时,将实参aa[1]的地址传递给形参,此时a[0]=a[1]=aa[2]=4,即aa[1]=4;当i=0时,将实参aa[0]的地址传递给形参,此时a[0]=a[1]=aa[1]=4,即aa[0]=4;当i=-1时,不满足条件i>=0,跳出循环,程序执行后数组aa中的值为4,4,4,4,5,6,7,8,9,10,所以aa[0]=4。

  • 第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题:

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

  • 第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题:

    有下列程序: 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
    在函数intfun(intxE],intn)的定义中,变量sum为一个静态局部变量。由于在整个程序运行期间,静态局部变量在内存中的静态存储中占据着永久的存储单元。函数intfun(intx[],intn)的功能是求出数组X[]各个元素的和,所以在j三函数中,调用函数fun(a,5)后,变量sum=1+2+3+4+5=15,当再次调用fun(b,4)后,变量sum=15+6+7+8+9=45,所以S=l5+45=60。

  • 第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题:

    以下程序执行后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。

  • 第23题:

    以下程序执行后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