若有以下定义语句:chars[10];s=”1234”;printf(“%s/n”,s);则运行结果是:()A、输出1234B、输出1C、输出4D、编译不通过

题目

若有以下定义语句:chars[10];s=”1234”;printf(“%s/n”,s);则运行结果是:()

  • A、输出1234
  • B、输出1
  • C、输出4
  • D、编译不通过

相似考题
更多“若有以下定义语句:chars[10];s=”1234”;prin”相关问题
  • 第1题:

    下列选项中正确的语句是( )。

    A.chars[3];s="BOOK!";

    B.char*s;s={"BOOK!"};

    C.chars[10];s="BOOK";

    D.char*S;s="BOOK!";


    正确答案:D
    D。【解析】在选项D中.字符指针s指向字符串常量BOOK!。故选项D正确。

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

    有定义语句“chars[10];”,若要从终端给s输入5个字符,错误的输入语句是( )。 A.gets(&sO);

    有定义语句“chars[10];”,若要从终端给s输入5个字符,错误的输入语句是( )。

    A.gets(&sO);

    B.scanf("%s",s+1);

    C.gets(s);

    D.scanf("%s",s[1]);


    正确答案:D
    D。【解析】选项A调用函数9ets使得S数组从S[0]开始得到输入的字符;选项B使得数组从元素s[1]开始得到输入的5个字符;选项C使得数组从s[0]开始得到输入的字符;而选项D的scanf("%S",S[1])调用错误,应为scanf("%S",&s[1])输入项部分应该是一个地址值。

  • 第4题:

    若有定义:int x=1234,y=123,z=12;则语句printf(“%4d+%3d+%2d”,x,y,z);运行后的输出结果为()

    A.123412312

    B.12341234123412341231231231212

    C.1234+1234+1234

    D.1234+123+12


    参考答案:D

  • 第5题:

    若有定义和语句 ( ) char s[10];s="abcd";printf("%s\n",s); 则结果是(以下μ代表空格)

    A.输出abcd

    B.输出a

    C.abcdμμμμμ

    D.编译不通过


    正确答案:D

  • 第6题:

    以下选项中正确的语句组是( )。

    A.char*s;s={f.BOOK!”};

    B.char*s;s:”BOOK!”:

    C.chars[10];s=”BOOK!”;

    D.cbars[];s:”BOOK!n:


    正确答案:B
    ^选项去掉大括号就正确了;c选项和D|选项应在定义时赋初值。因此B选项正确。

  • 第7题:

    若有定义语句:char s[3][10],(*k)[3],*p;,则以下赋值语句正确的是;

    A.p=s;

    B.p=k

    C.p=s[0]

    D.k=s;


    正确答案:C

  • 第8题:

    (28)若有定义语句:char s[3][10],(*k)[3],*p;,则以下赋值语句正确的是

    A)p=s;

    B)p=k;

    C)p=s[0];

    D)k=s;


    正确答案:C

  • 第9题:

    以下定义语句中,错误的是()。

    • A、inta[]={1,2} 
    • B、char*a[3] 
    • C、chars[10]="text" 
    • D、intn=5,a[n]

    正确答案:D

  • 第10题:

    若有定义和语句: char s[10]:s=""abcd"";printf(""%s/n"",s); 则结果是(以下u代表空格)()

    • A、输出abcd
    • B、输出a
    • C、输出abcduuuuu
    • D、编译不通过

    正确答案:D

  • 第11题:

    单选题
    若有定义:int x=1234,y=123,z=12;则语句printf(“%4d+%3d+%2d”,x,y,z);运行后的输出结果为()
    A

    123412312

    B

    12341234123412341231231231212

    C

    1234+1234+1234

    D

    1234+123+12


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

  • 第12题:

    单选题
    若有以下定义 chars=’/092’; 则该语句()
    A

    使s的值包含一个字符

    B

    定义不合法,s的值不确定

    C

    使s的值包含4个字符

    D

    使s的值包含3个字符


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

  • 第13题:

    以下选项中正确的语句组是______。

    A.chars[];s="BOOK!";

    B.char*s;s={"BOOK!"};

    C.chars[10];s="BOOK!";

    D.char*s;S="BOOK!";


    正确答案:D
    解析:选项A和选项C中,都是绐数组第—个元素赋初值,因为在C语言中,定义的数组名可以认为是—个存入地址值的指针变量名,其中的地址值是数组第—个元素的地址,即在默认情况下,程序使用数组名是指向该数组的首地址, —个地址只能存入一个数据,因此这两个选项是错误的;选项B和选项D都是用字符指针指向—个字符串,它只能指向—个字符变量或其他字符类型数据,不能同时指向多个字符数据,更不能把这些字符存放到变量中(指针变量只能存放地址),因此选项B是错误的,只有选项D是正确的。

  • 第14题:

    若有定义语句:

    则strlen(s)的值是()。

    A.7

    B.8

    C.9

    D.10


    正确答案:A
    本题考查的是字符串的长度。字符数组中可以存放字符串,但字符数组的长度并不是字符串的长度,字符串的长度是指字符数组中存放的有效字符个数,即“Ⅷ”之前的字符数。字符数组s中依次存放的字符是:l234567和2个字符串结束标记“Ⅷ”,故字符串的长度是7,所以应该选择A)。

  • 第15题:

    有定义语句“chars[10];”,若要从终端给S输入5个字符,错误的输入语句是( )。 A.gets(&s0);

    有定义语句“chars[10];”,若要从终端给S输入5个字符,错误的输入语句是( )。

    A.gets(&s0);

    B.scanf("%s",s+1);

    C.gets(s);

    D.scanf("%s",s[1]);


    正确答案:D
    D。【解析】选项A调用函数gets使得s数组从s[0]开始得到输入的字符;选项B使得数组从元素s[1]开始得到输入的5个字符;选项C使得数组从s[0]开始得到输入的字符;而选项D的scan[(”%S”,S[1])调用错误,应为scanf(”%s”,&s[1])输入项部分应该是一个地址值。

  • 第16题:

    若有定义语句:char s[3][10],(*k)[3]。*P;,则以下赋值语句正确的是

    A.p=S;

    B.p=k;

    C.p=s[0];

    D.k=S;


    正确答案:C

  • 第17题:

    若有以下定义语句: char * sl="12345", * s2="1234"; printf("%d"n",strlen(strcpy(s1,s2))); 则输出结果是 ( )

    A.4

    B.5

    C.9

    D.10


    正确答案:A

  • 第18题:

    下列选项中正确的语句是( )。

    A.chars[];s="BOOK!";

    B.char*s;S={"BOOK!");

    C.chars[10];s="BOOK";

    D.char*S;s="BOOK!";


    正确答案:D
    D。【解析】在选项D中,字符指针s指向字符串常量BOOK!。故选项D正确。

  • 第19题:

    有定义语句“chars[10];”,若要从终端给s输入5个字符,错误的输入语句是( )。

    A.gets(&sO);

    B.scanf("%s",s+1);

    C.gets(s);

    D.scanf("%s",s[1]);


    正确答案:D
    D。【解析】选项A调用函数9ets使得S数组从S[0]开始得到输入的字符;选项B使得数组从元素s[1]开始得到输入的5个字符;选项C使得数组从s[0]开始得到输入的字符;而选项D的scanf("%S",S[1])调用错误,应为scanf("%S",&s[1])输入项部分应该是一个地址值。

  • 第20题:

    若有以下定义语句:chars[10],s="abcd”;printf(“%s/n”,s);则运行结果是()

    • A、输出abcd
    • B、输出a
    • C、输出acbd
    • D、编译不通过

    正确答案:D

  • 第21题:

    若有以下定义 chars=’/092’; 则该语句()

    • A、使s的值包含一个字符
    • B、定义不合法,s的值不确定
    • C、使s的值包含4个字符
    • D、使s的值包含3个字符

    正确答案:B

  • 第22题:

    若有下列语句,则不能代表字符o的表达式是()。chars[20]=”programming”,*ps=s;

    • A、ps2
    • B、s[2]
    • C、ps[2]
    • D、*(ps+2)

    正确答案:A

  • 第23题:

    单选题
    若有定义语句:char s[3][10],(*k)[3],*p; 则以下赋值语句正确的是(  )。
    A

    p=s;

    B

    p=k;

    C

    p=s[0];

    D

    k=s;


    正确答案: C
    解析:
    A项,将字符型二维数组首地址赋值给了一个字符型指针,类型不匹配;B项,将指针数组的首地址赋值给一个字符型指针,类型不匹配;C项,s是二维字符数组,s[0]表示一个含有10个元素的一维数组,即将一维字符数组首地址赋值给了一个字符型指针,这是允许的;D项,将二维字符数组赋值给了指向一维字符数组的指针,类型不匹配。答案选择C选项。