下列各语句序列中,能够且仅输出整型变量a、b中最大值的是()。A、if(a>b)printf(”%d/n”,a);printf(”%d/n”,b);B、printf(”%d/n”,b);if(a>b)printf(”%d/n”,a);C、if(a>b)printf(”%d/n”,a);elseprintf(”%d/n”,b);D、if(a<b)printf(”%d/n”,a);printf(”%d/n”,b);

题目

下列各语句序列中,能够且仅输出整型变量a、b中最大值的是()。

  • A、if(a>b)printf(”%d/n”,a);printf(”%d/n”,b);
  • B、printf(”%d/n”,b);if(a>b)printf(”%d/n”,a);
  • C、if(a>b)printf(”%d/n”,a);elseprintf(”%d/n”,b);
  • D、if(a<b)printf(”%d/n”,a);printf(”%d/n”,b);

相似考题
参考答案和解析
正确答案:C
更多“下列各语句序列中,能够且仅输出整型变量a、b中最大值的是()。A、if(ab)printf(”%d/n”,a);printf(”%d/n”,b);B、printf(”%d/n”,b);if(ab)printf(”%d/n”,a);C、if(ab)printf(”%d/n”,a);elseprintf(”%d/n”,b);D、if(ab)printf(”%d/n”,a);printf(”%d/n”,b);”相关问题
  • 第1题:

    有以下程序 include main() { int n,*p=NULL; *p=&n; printf("

    有以下程序 #include <stdio.h> main() { int n,*p=NULL; *p=&n; printf("Input n:");scanf("%d",&p);printf("output n:");printf("%d\n",p); } 该程序试图通过指针p为变量n读入数据并输出,但程序有多处错误,以下语句正确的是

    A.int n,*p=NULL;

    B.*p=&n;

    C.scanf("%d",&p)

    D.printf("%d\n",p);


    正确答案:A
    解析:指针变量在定义时需要加星号,而在赋值时则不用,故选项B)错误。本题中,scanf()函数和printf()函数都是要对指针变量p指向的地址处的数据进行访问,不是变量本身。选项C)中多了取地址运算符,选项D)中少了指针运算符。

  • 第2题:

    设变量均已正确定义并且赋值,以下与其他三组输出结构不同的一组语句是()

    A.x++;printf((“%d\n”,x);

    B.n=++x;printf((“%d\n”,n);

    C.++x;printf((“%d\n”,x);

    D.n=x++;printf((“%d\n”,n);


    正确答案:D
    本题考察自增运算符,++x表示先将x值加1后再用,x++表示先使用x值,用后加1,所以本题中ABC选项都会输出x+1的值,只有D选项会输出x值。

  • 第3题:

    若有以下定义,则正确的swish语句是______。 float x;int a,b;

    A.switch(x) {case 1.0:printf("*\n"); case 2.0:printf("**\n"); }

    B.switch(x) {case 1,2:printf("*\n"); case 3:printf("**\n"); }

    C.switch(a+b) {case 1:printf("\n"); case 1+2:printf("**\n"); }

    D.switch(a+b); {case 1:printf("*\n"); case 2:printf("**\n"); }


    正确答案:C
    解析:switch后必须是整型或字符型的表达式,因此选项A、B错误;表达式的括号外没有分号,因此选项D错误。

  • 第4题:

    下列条件语句中,功能与其他语句不同的是______。

    A.if(b)printf("%d\n",a);else printf("%d\n",c);

    B.if(b==0)printf("%d\n",c);else printf("%d\n",a);

    C.if(b!=0)printf("%d\n",a);else printf("%d\n",c);

    D.if(b=+0)printf("%d\n",a);else printf("%d\n",c);


    正确答案:D

  • 第5题:

    有以下程序#include <stdio.h>main { int n,*p=NULL; *p=&n; printf("Input n:"); scanf("%d",&p); printf("output n:"); printf("%d\n",p);}该程序试图通过指针p为变量n读入数据并输出,但程序有多处错误,以下语句正确的是A.int n,*p=NULL; B.*p=&n; C.scanf("%d",&p) D.printf("%d\n",p);


    正确答案:A
    在C语言中存在直接存取和间接存取两种访问内存数据的方法。前者利用变量名隐式地访问内存:首先定义变量,然后由编译系统完成从变量名到内存地址的映射工作,用户通过变量名访问内存空间,变量地址对用户完全透明。后者则通过指针显式地访问内存:用户直接使用变量的地址,或者将变量的地址值储存于特殊的变量中,然后通过此特殊的变量获取地址值访问内存。
    为了更好地使用指针变量,C语言提供了获取变量地址和通过地址访问变量的运算符“&”和“*”。
    (1)取地址运算符“&”的使用格式为:&变量名,如&a表示变量a在内存中的地址。本运算符实现从变量到地址的转化。
    (2)指针运算符“*”的使用格式为:*指针变量名,如*p表示指针变量p所指向的变量的值。本运算符实现从地址到变量的转化。
    在本题中,程序的作用已经给出,下面分别分析各选项中的语句。在选项A中,定义了一个整型变量n和一个整型指针变量p,并使其指向一个空,即不指向任何变量,该语句是正确的语句;在选项B中,由于*p表示值,而&n表示地址,它们之间进行赋值操作明显是错误的;在选项C中,由于p是指针变量,没有&p表示方法,因此错误;在D选项中,输出的是p指针所指向的地址,而不是p指针所指向的变量值,不符合题目的要求。

  • 第6题:

    设变量均已正确定义并赋值,以下与其他三组输出结果不同的一组语句是( )。

    A.x++;printf("%dkn",x);

    B.n=++x;printf("%d\n",n);

    C.++x;printf("%d\n",x);

    D.n=x++;printf("%6d\n",n);


    正确答案:D
    本题考查++运算操作符,当++在变量前面时,是先加l再赋值,当++在变量后面时,是先赋值再加l,所以答案选择D。

  • 第7题:

    设有定义:long x=-123456L;,则以下能够正确输出变量x值的语句是

    A.printf(“x=%d\n”,x);

    B.printf(“x=%1d\n”,x);

    C.printf(“x=%8dL\n”,x);

    D.pfintf(“x=%LD\n”,x);


    正确答案:B
    解析:x为一个长整型的变量,而且是一个十进制的数,它的输出控制符是“%1d”;由于C语言中是区分大小写的,“1d”中的“d”不能为大写。

  • 第8题:

    设有定义:“long x=123450L;”,则以下能够正确输出变量x的是( )。

    A.printf("x=%d\n",x);

    B.printf("x=%id\a",x);

    C.printf("x=%dL\n”,x);

    D.printf("x=%ld\n",x);


    正确答案:D
    解析:C语言规定,输出long型数值的格式符为%1d。

  • 第9题:

    若变量已正确定义,在语句“if(W)printf("%d\n",k);”中,以下不可替代w的是( )。 A.a<>b+cS

    若变量已正确定义,在语句“if(W)printf("%d\n",k);”中,以下不可替代w的是( )。

    A.a<>b+c

    B.ch=getchar

    C.a= =b+C

    D.a++


    正确答案:A
    符号<>不是C语言中的运算符,所以不能替代。

  • 第10题:

    若有定义inta=8,b=5;要实现输出形式为:8*5=40,正确的printf()函数调用语句是()。

    A.printf(“a*b=a*b\n”);

    B.printf(“a*b=%d\n”,a*B.;

    C.printf(“%d*%d=a*b\n”,a,B.;

    D.printf(“%d*%d=%d\n”,a,b,a*B.;


    正确答案:D

  • 第11题:

    若有定义:float x=1.5;int a=1,b=3,c=2; 则正确的switch语句是( )。

    A.switch(x) { case 1.0: printf("*\n"); case 2.0: printf(" * * \n" );

    B.switch((iht)x); { case 1: printf(" * \n" ); case 2: printf(" * * \n" ); }

    C.switch(a +b) { case 1: printf(" * \n" ); case 2 + 1: printf(" * * \n" ); }

    D.switch(a + b) { case 1: pfintf(" * \n" ); case c: pfintf(" * * \n"); }


    正确答案:C
    解析:选项A)中case后面的表达式为浮点型,选项D)中case后面的表达式存在字符变量c,故选项A)、D)错误;在选项B)中,switch后面的表达式加了分号显然有错。

  • 第12题:

    下列各语句中,能够输出整型变量a、b中最大值的是()。

    • A、printf(”%d/n”,(a>b)?a,b);
    • B、(a>b)?printf(”%d”,a):printf(”%d”,b);
    • C、printf(”%d”,if(a>b)aelseb);
    • D、printf(”%d/n”,(a>b)?a:b);

    正确答案:D

  • 第13题:

    有以下程序:inlucdemain()D)2 3 3{int n,*P=NULL;*p=&n;printf("input n:");scanf("%d

    有以下程序: #inlucde<stdio.h> main()D)2 3 3 {int n,*P=NULL; *p=&n; printf("input n:");scanf("%d",&p);printf("output n:");printf("%d\n",p); } 该程序试图通过指针P为变量n读入数据并输出,但程序有多处错误,以下语句正确的是( )。

    A.int n,*P=NULL;

    B.*P=&n;

    C.scanf(“%d",&p)

    D.printf("%d\n",p);


    正确答案:A

  • 第14题:

    设有定义:longx=-123456L;,则以下能够正确输出变量x值的语句是

    A.printf("x=%d\n",x);

    B.printf("x=%1d\n",x);

    C.printf("x=%8dL\n",x);

    D.printf("x=%LD\n",x);


    正确答案:B
    解析:本题考查的知识点是输出语句printf()的基本用法。x为一个长整型的变量,而且是一个十进制的数,它的输出控制符是“%1d”,所以排除选项A和选项C;由于C语言中是区分大小写的,“1d”中的“d”不能为大写,故排除选项D。4个选项中B正确。

  • 第15题:

    若有以下定义:float x;int a,b; 则错误的switch语句是________。

    A. switch(x){case 1.0:printf("*\n"); case 2.0:printf("*\n"); }

    B. switch(a){case 1:printf("*\n");case 2:printf("*\n"); }

    C. switch(a+b) {case 1:printf("*\n"); case 1+2:printf("*\n"); }

    D. switch(a+b);{case 1:printf("*\n");case 2:printf("*\n"); }


    参考答案:D

  • 第16题:

    下列条件语句中,功能与其他语句不同的是

    A.if(a) printf("%d\n",x); else prinff("%d\n",y);

    B.if(a==0) printf("%d\n",y); else printf("%d\n",x);

    C.fi(a!=0) prinff("%d\n"x); else printf("%d\n",y);

    D.if(a==0) prinff("%d\n",x); else printf("%d\n",y);


    正确答案:D
    解析:本题考核的知识点是if语句的用法。选项A、选项B和选项C都是在a的值为。的时候输出y,a不为。的时候输出x,而选项D是在a为0的时候输出x,a不为0的时候输出y,所以,4个选项中选项D符合题意。

  • 第17题:

    设有定义:long x=123456L;,则以下能够正确输出变量x值的语句是( )

    A.printf("x=%d\n",x);

    B.printf("x=%ld\n",x);

    C.printf("x=%8dL\n",x);

    D.printf("x=%LD\n",x);


    正确答案:B

  • 第18题:

    设变量均已正确定义并赋值,以下与其他三组输出结果不同的一组语句是

    A)x++;printf(”%d\n”,x);

    B)n=++x;printf(”%d\n”,n);

    C)++x;printf(”%d\n”,x);

    D)n=x==;printf(”%d\n”,n);


    正确答案:D
    【答案】D
    【知识点】自增运算符
    【解析】前三个选项打印的均是x变量自增一后的结果,只有D选项中x先把值赋给了n后才自增,打印是x的原值。

  • 第19题:

    设有定义:long x=-123456L; 则以下能够正确输出变量x值的语句是_______。

    A.printf(“x=%d\n”,x)

    B.printf(“x=%ld\n”,x)

    C.printf(“x=?l\n”,x)

    D.printf(“x=%D\n”,x);


    正确答案:B

  • 第20题:

    下列条件语句中,输出结果与其他语句不同的是( )。

    A.if(a)printf("%d n",x); else print[("%d\n",y)

    B.if(a=0)pritf("%d n",y); else print[("%d\n",x)

    C.if(a!一0)printf("%d n",x); else print[("%a\n",y)

    D.if(a=O)print[("%d n",x); else printf("%d\n",y)


    正确答案:D
    主要考查if判断语句,A选项if(a),如果a为真,则输出X,否则输出Y。B选项if(a==0),如果a恒等于0,则输出Y,否则输出X。C选项a(!=o),如果a不等于0,则输出X,否则输出y。D选项if(a==0),如果a恒等于0,则输出X,否则输出y。由以上结论可知,输出结果不同的为D选项。

  • 第21题:

    若有定义:float x=1.5;int a=1,b=3,c=2;则正确的switch语句是______。

    A.switch (x) {case 1.0: printf("*\n"); case 2.0: printf("**\n");}

    B.switch ( (int)x); {case 1: printf("*\n"); case2: printf("**\n");}

    C.switch (a+b) {case 1:printf("*\n"); case 2+1: printf("**\n");}

    D.switch (a+b)) {case 1: pfintf("*\n")}; case c: printf("**\n"));}


    正确答案:C
    解析:在switch语句中,case后的常量表达式只能是整型或等价于整型的常量,而选项A中case后面的表达式为浮点型,选项D中case后面的表达式存在字符变量“c”,故选项A与选项D错误;在选项B中,switch后面的表达式加了分号显然格式有误。故选项C正确。

  • 第22题:

    下列条件语句中,输出结果与其他语句不同的是

    A.if(a) printf("%d\n",x);else printf("%d\n",y);

    B.if(a==0) printf("%d\n",y);else pfintf("%d\n",x);

    C.if(a!=0) printf("%d\n",x);else printf("%d\n",y);

    D.if(a==0) printf("%d\n",x);else printf("%d\n",y);


    正确答案:D
    解析:考察if语句中的判断,可以由A)、B)、C)三个选项看出,都是表示,只有当a不等于0时输出x,否则输出y,D)选项正好相反,所以选择D)。

  • 第23题:

    试题19

    下列条件语句中,输出结果与其他语句与其他语句不同的是()

    A. if(a) printf(“%d\n”,x); else printf(“%d\n”, y);

    B. if(a==0) printf(“%d\n”,y); else printf(“%d\n”, x);

    C. if(a!=0) printf(“%d\n”,x); else printf(“%d\n”, y);

    D.if(a==0) printf(“%d\n”,x); else printf(“%d\n”, y);


    正确答案:D
    试题19分析
    A,如果a为非0,输出x,否则输出y。
    B,如果a等于0,输出y,否则输出x。
    B,如果a为非0,输出x,否则输出y。
    D,如果a等于0,输出x,否则输出y。
    试题19答案
    D