参考答案和解析
正确答案:C
更多“如果定义有short,s;byte,b;char,c,则表达式s”相关问题
  • 第1题:

    自动类型转换是按优先关系从低级数据转换成高级数据,规定的优先次序是( )。

    A.byte, short, char→int→long→float→double

    B.float→int→long→byte, short, char→double

    C.int→long→float→double→byte, short, char

    D.double→int→float→long→byte, short, char


    正确答案:A

  • 第2题:

    若有定义语句:char s[10]="1234567\0\0";,则strlen(s)的值是______。

    A.7

    B.8

    C.9

    D.10


    正确答案:A
    解析:strlen(字符数组)是测试字符串的长度的函数。函数的值为字符串的实际长度,不包括'\0'在内。 C语言中字符串是以'\0'字符结束的,且salen()函数计算的是'\0'字符前的所有字符的个数,所以本题strlen(s)的值是7。需要与其区分的是sizeof()函数,它的功能是计算变量或数组所分配到的内存空间的大小。如果本题要求计算sizeof(s)的话,则其值应为10。

  • 第3题:

    设有定义:char s[12]={"hello"},则cout<<strlen(s)的输出是 ______。

    A.5

    B.6

    C.11

    D.12


    正确答案:A

  • 第4题:

    若有以下定义: char s[20]="programming",*ps=s; 则不能代表字符o的表达式是_______。

    A.ps+2

    B.s[2]

    C.ps[2]

    D.ps+=2,*ps


    正确答案:A
    解析:ps+2就是s[2]的地址,即存放字符o的地址,所以A是错误的。

  • 第5题:

    若有byte b=6;short s=20;则表达式b+s的值的类型是()。

    A.byte

    B.int

    C.short

    D.char


    答案:C

  • 第6题:

    若有float f=2.6f;short s=20;则表达式f+s的值的类型是()。

    A.float

    B.short

    C.int

    D.byte


    答案:A

  • 第7题:

    以下代码中变量result的可能类型有哪些?byte b = 11;short s = 13;result = b * ++s;

    A.byte, short, int, long, float, double

    B.boolean, byte, short, char, int, long, float, double

    C.byte, short, char, int, long, float, double

    D.byte, short, char

    E.int, long, float, double


    正确答案:E
     

  • 第8题:

    下面哪个语句是正确的()

    • A、short s=256;
    • B、String s=‘Helloworld’;
    • C、int x=012;
    • D、char c=“a”;

    正确答案:A,C

  • 第9题:

    如果定义有double,x;float,y;int,m,则表达式x*y-m的类型为()

    • A、double
    • B、float
    • C、int
    • D、short

    正确答案:A

  • 第10题:

    若有定义char s[10];则在下面表达式中不表示s[1]的地址的是()

    • A、s+1
    • B、s++
    • C、&s[0]+1
    • D、&s[1]

    正确答案:B

  • 第11题:

    若有floatf=2.6f;shorts=20;则表达式f+s的值的类型是()

    • A、float
    • B、short
    • C、int
    • D、byte

    正确答案:A

  • 第12题:

    单选题
    有以下程序(说明:字母A的ASCII码值是65):#include void fun(char *s){ while(*s) {  if(*s%2)printf(%c,*s);  s++; }}main(){ char a[]=BYTE; fun(a); printf();}程序运行后的输出结果是(  )。
    A

    BY

    B

    BT

    C

    YT

    D

    YE


    正确答案: B
    解析:
    函数只会输出ASCII码值为奇数的字母,执行fun(a)时,依次取出a[]中的字母,当取第一个字母B时,因为B的ASCII码值为66,所以不会输出B,字母Y的ASCII码值为89,字母T的ASCII码值为84,字母E的ASCII码值为69,所以最后输出字母YE。答案选择D选项。

  • 第13题:

    有以下程序(说明:字母A的ASCIl码值是65): #include<stdio.h> void fun(char*s) {while(*s) {if(*s%2)printf("%C",*s); s++; } } main( ) {char a[]="BYTE"; 。 Fun(a);printf("\n"); } 程序运行后的输出结果是( )。

    A.BY

    B.BT

    C.YT

    D.YE


    正确答案:D
    fun函数的意思是当*s%2==0的时候就输出并且s自加l次,然后判断。所以可知只有第2和第4个位置上的才符合要求,所以答案为D。

  • 第14题:

    有定义语句int b;char c[10];,则正确的输入语句是 ______。

    A.scallf("%d%s",&b,&c);

    B.scallf("%d %s",&b,c);

    C.scanf("%d %s",b,c)

    D.scanf("%d%s",b,&c);


    正确答案:B
    解析:scanf函数中的“格式控制”后面应当是地址,而不是变量名。对于变量,通过地址运算符“&”求出内存中的地址;对于数组c[10],数组名c即为数组在内存中的地址。

  • 第15题:

    有以下程序(说明:字母A的ASCII码值是65)

    #include<stdio.h>

    void fun(char*S)

    {while(*s)

    {if(*s%2)printf(“%c”,*s);

    S++;

    }

    }

    main()

    {char a[]=“BYTE”:

    fun(a);printf(“\n”);

    }

    程序运行后的输出结果是

    A.BY

    B.BT

    C.YT

    D.YE


    正确答案:D

  • 第16题:

    自动类型转换规定的优先次序是( )。

    A.short,byte,char→long→int→float→double

    B.short,byte,char→int→long―float→double

    C.byte,short,char→long→int→float→double

    D.byte,short,char→int→long→float→double


    正确答案:D

  • 第17题:

    若有char c='8';short s=20;则表达式c+s的值的类型是()。

    A.char

    B.short

    C.int

    D.byte


    答案:A

  • 第18题:

    设有定义语句“char s[]="123";”,则表达式“s[3]”的值是 ( )

    A.’1’

    B.’3’

    C.0

    D.语法出错


    正确答案:C
    字符数组s在定义时省略了数组长度,表示给每个数组元素均赋了初值。对本题来说,数组的长度为4;数组元素的值依次为:S[0]为'1'。S[1」为'2'。S[2]为'3'、S[3]为字符率结束标记符'\0',所以“s[3]”的值是'\0'。注意,这个字符的ASCII代码值是整数0,所以本题答案应选C。

  • 第19题:

    串的操作函数str定义为: int str(char*s){ char*p=s; while(*p!=’\0')p++; return p=s; } 则str("abcde")的返回值是 ( )

    A.3

    B.4

    C.5

    D.6


    正确答案:C
    解析:由此操作函数可知,循环执行前,P和S均指向字符串的首字符,循环执行结束后,S仍指向首字符,而P指向字符串之后的结束符(\0),故P—S返回的是整个字符串的长度。

  • 第20题:

    若有charc=’8’;shorts=20;则表达式c+s的值的类型是()

    • A、char
    • B、short
    • C、int
    • D、byte

    正确答案:A

  • 第21题:

    若有byteb=6;shorts=20;则表达式b+s的值的类型是()

    • A、byte
    • B、int
    • C、short
    • D、char

    正确答案:C

  • 第22题:

    若有定义:char s[ ]="china"; 则Turbo C系统为数组s开辟()个字节的内存单元.


    正确答案:6

  • 第23题:

    单选题
    如果定义有short,s;byte,b;char,c,则表达式s*b+c的类型为()
    A

    char

    B

    short

    C

    int

    D

    byte


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