更多“以下程序运行后的输出结果是()。      main( )  {int a=010,b=2,c;      c=a+b;  printf(“%d”,c);      }”相关问题
  • 第1题:

    以下程序运行后,输出结果是define PT5.5define S(x)PT*x*xincludemain(){int a=1,b=

    以下程序运行后,输出结果是 #define PT 5.5 #define S(x) PT*x*x #include<stdio.h> main() { int a=1,b=2; printf("%4.1f\n",s(a+b));}

    A.49.5

    B.9.5

    C.22

    D.45.0


    正确答案:A

  • 第2题:

    以下程序运行后的输出结果是______。 main ()inta.b,c;a=10; b=20;c=(a%b<)||{a/b>1);printf("%d%

    以下程序运行后的输出结果是______。

    main ()

    int a.b,c;

    a=10; b=20; c=(a%b<)||{a/b>1);

    printf("%d %d %d n" ,a,b,c);

    }


    正确答案:10 20 0
    10 20 0 解析:本题的关键在于求表达式(a%b1)‖a/b>1)的值。已知a=10,b=20,所以a%b=10,因此(a%b1)为“假”。而a/b=0,因此(a/b>1)亦为“假”。,D运算的两边同时为“假”,所以整个表达式的值为。“假”,即c等于0。所以,本题最终输出为:10 20 0。

  • 第3题:

    以下程序运行后的输出结果是( )。 include main(){ int a=1, b=7; do { b=b/2; a+=b

    以下程序运行后的输出结果是( )。

    include<stdio.h>

    main()

    { int a=1, b=7;

    do {

    b=b/2; a+=b;

    } while(b>1);

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

    }


    正确答案:5
    5 解析:该程序考查do-while循环。循环共进行两次。第一次循环b=3,a=4;第二次循环b=1,a=5。输出a的值为5。

  • 第4题:

    有以下程序:include main( ){ unsigned int a; int b=-1;a=b;printf(" % u", a);程序

    有以下程序: #include <stdio. h> main( ) { unsigned int a; int b=-1; a=b; printf(" % u", a);程序运行后的输出结果是( )。

    A.-1

    B.65535

    C.32767

    D.-32768


    正确答案:B
    解析:不同类型的对象进行混合运算时,需要进行数据的类型转换,其转换方向为int→unsigned→long→double。本题程序中的变量b为int型,需要转换为unsigned型。int型变量的数值范围为-32768~32767,最高位为符号位,而unsigned所表示的数的范围为0~65535,它的最高位为数值位。由于内存中是以补码形式存储数据的,所以整型数-1在内存中表示为16个1,最高位的1表示符号为负,将它转换为unsigned类型,即将原符号位的1看成数值,所以得到16个数值1,即65535。

  • 第5题:

    以下程序运行后的输出结果是( )。 include main() { int x=20; printf("%d", 0

    以下程序运行后的输出结果是( )。

    include<stdio.h>

    main()

    { int x=20;

    printf("%d", 0<x<20);

    printf("%d\n", 0<x && x<20);

    }


    正确答案:10
    10 解析:表达式0x20,首先计算0x,其值为1,再计算120,其值为1,输出1;表达式0x && x20,0x为1,x20为0,再计算1 && 0,其值为0,输出0。所以输出结果为10。

  • 第6题:

    有以下程序includevoid main(){int a=1,b=0;printf("%d,",b=(a++)+(a++));pfintf("%d\

    有以下程序 #include<stdio.h> void main() { int a=1,b=0; printf("%d,",b=(a++)+(a++)); pfintf("%d\n",a+B); } 程序运行后的输出结果是( )。

    A.4,6

    B.2,5

    C.3,5

    D.2,6


    正确答案:B

  • 第7题:

    以下程序运行后,输出结果是______。 define P4.5 define S(x)P*x*x include main() {

    以下程序运行后,输出结果是______。 #define P4.5 #define S(x)P*x*x #include<stdio.h> main() { int a=2,b=3; printf("%.1f\n",S(a+b)); }

    A.49.5

    B.112.5

    C.18

    D.24


    正确答案:C

  • 第8题:

    有以下程序: main {int a=0,b=0; a=10; /*给a赋值 b=20; 给b赋值 */ printf("a+b=%d\n",a+b);//输出计算机结果 } 程序运行后的输出结果是( )。

    A.a+b=10

    B.a+b=30

    C.30

    D.出错


    正确答案:A
    本题中/*……*/为多行注释,所以可知b=20为注释语句,在程序运行时不起作用,b仍为0,所以本题中A正确。

  • 第9题:

    以下程序运行后,输出结果是define PT 5.5define S(x)PT*x*xincludemain(){ int a=1,

    以下程序运行后,输出结果是 #define PT 5.5 #define S(x) PT*x*x #include<stdio.h> main() { int a=1,b=2; printf("%4.1f\n",S(a+b));}

    A.49.5

    B.9.5

    C.22

    D.45


    正确答案:A
    解析:宏替换用“#define宏名宏体”的形式来定义。在进行编译预处理时,将把程序中宏定义之后的所有宏名用宏体替换。宏虽然可以带参数,但宏替换过程中不像函数那样要进行参数值的计算、传递及结果返回等操作;宏替换只是简单的字符替换,不进行计算。因而本题中的S(a+b)进行宏替换后为PT*1+2*1+2=5.5*1+2*1+2=9.5。注意:带参数的宏定义。

  • 第10题:

    若有如下程序:sub(int a,int b,int*z){*z=a+b;return;}main(){int a=1,b=2,C=3,d,e;sub(a,b,&

    若有如下程序: sub(int a,int b,int*z) { *z=a+b; return; } main() { int a=1,b=2,C=3,d,e; sub(a,b,&d); sub(C,d,&e); printf("%d",e); } 则程序运行后的输出结果是( )。

    A.3

    B.4

    C.5

    D.6


    正确答案:D
    解析:第一次调用函数sub返回后,d的值为2+1=3;第二次调用函数sub返回后,e的值为3+3=6。

  • 第11题:

    填空题
    以下程序运行后的输出结果是()。      main( )  {int a=1,b=3,c=5;      if(c=a+b)     printf(“yes”);      else  printf(“not”);  }

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

  • 第12题:

    单选题
    有以下程序:#include main(){ int a=1,b=0; printf(%d,,b=a+b); printf(%d,a=2*b);}程序运行后的输出结果是(  )。
    A

    0,0

    B

    1,0

    C

    3,2

    D

    1,2


    正确答案: B
    解析:
    main函数先为a、b赋值,然后做运算a+b结果赋值给b,此时b为1,并将b打印出来。接着做运算2*b结果为2*1=2赋值给a,将a打印出来,所以最终的输出结果为1,2。答案选择D选项。

  • 第13题:

    以下程序运行后,输出结果是 #define PT 5.5 #define S(x)PT* x * x main() {int a=1,b=2; printf("%4.lf\n",S(a+b); }

    A.49.5

    B.9.5

    C.22

    D.45


    正确答案:B
    解析:本题考察宏定义的使用,宏在使用是如同函数一样,但却是在编译时展开,而函数却是在运行时进行计算的。

  • 第14题:

    以下程序的输出结果是()。includemain(){int a=21,b=11; printf("%d\n",--a+b,--b+a);}

    以下程序的输出结果是( )。 #include <stdio.h> main() { int a=21,b=11; printf("%d\n",--a+b,--b+a); }

    A.30

    B.31

    C.32

    D.33


    正确答案:A
    解析:该题考查的是C语言中自减运算符和逗号表达式的应用。自减运算符作为前缀时,先使变量的值减1,再进行赋值运算。逗号表达式的形式为:表达式1,表达式2,其求解过程是:先求解表达式1,再求解表达式2,整个逗号表达式的值是表达式2的值。

  • 第15题:

    有以下程序: #include<stdio.h> #define SUB(a)(a)-(a) main( ) {int a=2,b=3,c=5,d; d=SUB(a+b)*C; printf("%d\n",d); } 程序运行后的输出结果是( )。

    A.0

    B.-l2

    C.-20

    D.10


    正确答案:C
    本题调用参数,并考查了优先级。SUB(a+b)*C调用后可写成(a书b)-(a+b)*C,结果为5-25=-20。

  • 第16题:

    以下程序运行后的输出结果是int a=5;fun(int b){ static int a=10; a+=b++; printf("%d, ",a);}main{ int c=20; fun(c); a+=c++; printf("%d\n",a);}


    正确答案:30,25
    在本题中,程序首先定义了一个整型全局变量a,全局变量的作用域为整个程序。然后定义了一个fun函数,函数带有一个整型变量作为形参,在函数体中,首先定义了一个静态变量a,与全局变量a同名,在这种情况下,在函数fun中静态变量a具有更高的使用优先级,而在主函数中,全局变量a具有更高的使用优先级。
    在主函数中,首先定义一个整型变量c并初始化为20,然后调用fun函数,将变量c作为实参传递给函数,执行a+=b++,等价于a=a+(b++)=10+20=30,然后执行输出语句,输出变量a的结果“30,”,然后程序回到主函数中的a+=c++;语句执行,此语句等价于a=a+(c++)=5+20=25,然后输出变量a的结果25。因此,本题的程序运行后的输出结果是30,25。

  • 第17题:

    有以下程序: #include<stdiO.h> main( ) {int a=1,b=0; printf("%d,",b=a+b); printf("%d\n",a=2+b); ‘’ } 程序运行后的输出结果是( )。

    A.0,0

    B.1,3

    C.3,2

    D.1,2


    正确答案:D
    本题输出两个值,第一个printf语句输出b的值b=a+b=1。第二个printf语句输出了a的值,a=2b,此时b的值为1,所以a的值为2。

  • 第18题:

    有以下程序:includedefine X 5+6main(){int a=2,c;C=X*2:printf("%d",C);}程序运行后

    有以下程序: #include<stdio.h> #define X 5+6 main() {int a=2,c; C=X*2: printf("%d",C); } 程序运行后的输出结果是( )。

    A.17

    B.22

    C.16

    D.11


    正确答案:A

  • 第19题:

    以下程序运行后,输出结果是______。 #define PT 5.5 #define S(x) PT*x*x main() { int a=1,b=2;printf("%4.1 f\n",S(a+b)); }

    A.49.5

    B.9.5

    C.22

    D.45


    正确答案:B

  • 第20题:

    若有如下程序:sub(int a,int b,int *z){*z=a+b;return;}main(){int a=1,b=2,c=3,d,e;sub(a,b,&am

    若有如下程序: sub(int a,int b,int *z) {*z=a+b; return;} main() {int a=1,b=2,c=3,d,e; sub(a,b,&D) ; sub(c,d,&e); printf("%d",e); } 则程序运行后的输出结果是

    A.3

    B.4

    C.5

    D.6


    正确答案:D

  • 第21题:

    以下程序输出的结果是()。includemain(){int i=010,j=10;printf("%d,%d\n:,++i,j--);}A

    以下程序输出的结果是( )。 #include <stdio.h> main() { int i=010,j=10; printf("%d,%d\n:,++i,j--); }

    A.11,10

    B.9,10

    C.010,9

    D.10,9


    正确答案:B
    解析:程序中i的值用八进制表示(十进制为8),++i是在变量使用前自身先加1,而j--是在变量使用后自身减1。所以,4个选项中B符合题意。

  • 第22题:

    以下程序运行后的输出结果是()。      main( )  {int a=1,b=3,c=5;      if(c=a+b)     printf(“yes”);      else  printf(“not”);  } 


    正确答案:yes

  • 第23题:

    填空题
    以下程序运行后的输出结果是()。      main( )  {int a=010,b=2,c;      c=a+b;  printf(“%d”,c);      }

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