有如下定义:charstr[3][2]={’a’,’b’,’c’,’/0’,’e’,’f’};则语句:printf("%s",str[0]);的输出结果是()A、abB、abcefC、abc/0D、abc

题目

有如下定义:charstr[3][2]={’a’,’b’,’c’,’/0’,’e’,’f’};则语句:printf("%s",str[0]);的输出结果是()

  • A、ab
  • B、abcef
  • C、abc/0
  • D、abc

相似考题
更多“有如下定义:charstr[3][2]={’a’,’b’,’c’,’/0’,’e’,’f’};则语句:printf("%s",str[0]);的输出结果是()A、abB、abcefC、abc/0D、abc”相关问题
  • 第1题:

    下列程序的输出结果是()。includestruct abc{int a, b, c, s;};main(){struct abc s[2]

    下列程序的输出结果是( )。 #include <stdio.h> struct abc { int a, b, c, s;}; main() { struct abc s[2]={{1,2,3},{4,5,6}}; int t; t=s[0].a+s[1].b; printf("%d\n",t); }

    A.5

    B.6

    C.7

    D.8


    正确答案:B
    解析:在本题中,s[0].a=1,s[1].b=5,所以输出结果为6。

  • 第2题:

    设有如下定义 int x=10,y=3,z; 则语句 printf("%d\n",z=(x%y,x/y)); 的输出结果是( )

    A.3

    B.0

    C.4

    D.1


    正确答案:A

  • 第3题:

    下列程序段的运行结果是()。 include void main() {char str[]="ABC",*p=str; printf("

    下列程序段的运行结果是( )。

    #include<stdio.h>

    void main()

    { char str[]="ABC",*p=str;

    printf("%d\n",*(p+3) );

    }

    A.67

    B.0

    C.字符'C'的地址

    D.字符'C'


    正确答案:B
    解析:先定义了一个指向字符型数组str的指针p,指针p指向数组str的首地址,p+3将指针指向str[3],又因为字符型数组在存放字符串时会自动在末尾加上'\0',所以*(p+3)=0。

  • 第4题:

    设有如下定义: int x=10,y=3,z; 则语句printf("%d\n",z=(x%y,x/y)); 的输出结果是( )。A.1SX

    设有如下定义: int x=10,y=3,z; 则语句printf("%d\n",z=(x%y,x/y)); 的输出结果是( )。

    A.1

    B.0

    C.4

    D.3


    正确答案:D

  • 第5题:

    下面程序的输出结果是 ( ) include include { char * p1="abc" , *

    下面程序的输出结果是 ( ) # include<stdio.h> # include<string.h> { char * p1="abc" , * p2=" ABC ",str[50]="xyz"; strcpy(str+2.strcat (pi,p2)); printf("%s\n",str);}

    A.xyzabcAB

    B.zabcABC

    C.yzabcABC

    D.xycbcABC


    正确答案:D

  • 第6题:

    下面程序段的输出结果是( )。 char str[]="ABC",*p=str; Printf("%d\n",*(p+3));

    A.67

    B.0

    C.字符'C'的地址

    D.字符'C'


    正确答案:B
    解析:本题考查指向字符串的指针变量。指针变量p指向的应该是该字符串中的首地址,p+3指向的是字符串结束标志"\0"的地址,因而*(p+3)的值为0。

  • 第7题:

    下列程序段的输出结果是()。  char str[ ]= “abc/0def/0ghi”, *q=str;  printf(“%s”,q+5); 


    正确答案:ef

  • 第8题:

    已知charstr[]="afternoon”;则若要输出数组中f字符,则下列引用正确的是()

    • A、str[0]
    • B、str[1]
    • C、str[2]
    • D、str

    正确答案:B

  • 第9题:

    设有定义语句:charstr[][20]={"Hello","Beijing"},*p=str;()则printf("%d/n",strlen(p+20));输出结果是

    • A、0
    • B、5
    • C、7
    • D、20

    正确答案:C

  • 第10题:

    若定义了charch[]={″abc/0def″},*p=ch;则执行printf(″%c″,*p+4);语句的输出结果是()

    • A、def
    • B、d
    • C、e
    • D、0

    正确答案:C

  • 第11题:

    单选题
    有如下定义:charstr[3][2]={’a’,’b’,’c’,’/0’,’e’,’f’};则语句:printf("%s",str[0]);的输出结果是()
    A

    ab

    B

    abcef

    C

    abc/0

    D

    abc


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

  • 第12题:

    单选题
    设有如下定义:intx=10,y=3,z;则语句 printf("%d/n",z=(x%y,x/y));的输出结果是()
    A

    1

    B

    0

    C

    4

    D

    3


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

  • 第13题:

    以下C程序段的输出结果是(30)。 include void abc(char *str){ int a, b;

    以下C程序段的输出结果是(30)。 #include <stdio. h> void abc(char *str){ int a, b; for(a=b=0;str[a]!='\O';a++)if(str[a]!='c') str[b++]=str[a]; str[b]='\O'; } void main(){ char str[]="abcdef"; abc(str); printf("str[]=%s",str); }

    A.str[]=a

    B.str[]=ab

    C.str[]=abdef

    D.str[]=abcdef


    正确答案:C
    解析:本试题核心在于子函数的for循环。For循环将整个字符串中的字符处理一遍,每次处理时,函数的基本工作是将除字母c之外的字符重新赋值,然后a++,b++,继续处理下一个字符。对于字母c不赋值,且只有a++而b不变。可见for循环的目的只是将字母c剔除。

  • 第14题:

    下列程序段的运行结果是()。includevoid main(){char str[]="ABC",*p=str;printf("%d\n

    下列程序段的运行结果是( )。 #include<stdio.h> void main() { char str[]="ABC",*p=str; printf("%d\n",*(p+3)); }

    A.67

    B.0

    C.字符'C'的地址

    D.字符'C'


    正确答案:B
    解析: 先定义了一个指向字符型数组str的指针p,指针p旨向数组str的首地址,p+3将指针指向str[3],又因为字符型数组在存放字符串时会自动在末尾加上'\0',所以*(p+3)=0。

  • 第15题:

    有如下程序段struct abc{ int a, b, c, s;};main(){ struct abc s[2]={{1,2,3},{4,5,6}}; int t; t=s[0].a+s[1].b; printf("%d\n",t);}程序运行后输出的结果是A.5 B.6 C.7 D.8


    正确答案:B
    本题中,程序首先定义一个结构体,该结构体定义了四个整型变量。在主函数中,首先定义了一个该结构体的大小为2的结构体数组,并给该数组进行了初始化,从初始化语句我们可以看出,初始化时缺少了一个结构体成员的值,在这种情况下,系统会自动为缺省的成员补0,本题中就是给结构体成员变量b赋初值为0。
    然后定义了一个整型变量t,接着运行t=s[0].a+s[1].b;语句,即t=1+5=6。因此,程序的最后输出结果为6,本题正确答案选B。

  • 第16题:

    有如下定义:charstr[3][2]={’a’,’b’,’c’,’\0’,’e’,’f’};则语句:printf("%s",str[0]);的输出结果是()

    A.ab

    B.abcef

    C.abc\0

    D.abc


    参考答案:D

  • 第17题:

    下面程序的输出结果是includeincludemain(){char *p1="abc",*p2="ABC",str

    下面程序的输出结果是 #include<stdio.h> #include<string.h> main() { char *p1="abc",*p2="ABC",str[50]="xyz"; strcpy(str+2,strcat(p1,p2)); printf("%s\n",str);}

    A.xyzabcABC

    B.zabcABC

    C.xyabcABC

    D.yzabcABC


    正确答案:C
    解析:本题考查的重点是拷贝字符串——使用strcpy()函数,该函数的调用方式是:strcpy(字符数组,字符串)其中“字符串”可以是字符串常量,也可以是字符数组。函数的功能是:将“字符串”完整地复制到“字符数组”中,字符数组中原有内容被覆盖。使用该函数时注意:①字符数组必须定义得足够大,以便容纳复制过来的字符串。复制时,连同结束标志‘\0’一起复制。②不能用赋值运算符“=”将一个字符串直接赋值给一个字符数组,只能用strcpy()函数来处理。另外,本题还考查连接字符串的strcat()函数,其调用方式是:strcat(字符数组,字符串)功能是把“字符串”连接到“字符数组”中的字符串尾端,并存储于“字符数组”中。“字符数组”中原来的结束标志,被“字符串”的第一个字符覆盖,而“字符串”在操作中未被修改。使用该函数时注意:①由于没有边界检查,编程者要注意保证“字符数组”定义得足够大,以便容纳连接后的目标字符串;否则,会因长度不够而产生问题。③连接前两个字符串都有结束标志‘\0’,连接后“字符数组”中存储的字符串的结束标志‘\0’被舍弃,只在目标串的最后保留一个‘\0’。

  • 第18题:

    若定义了charch[]={″abc\0def″},*p=ch;则执行printf(″%c″,*p+4);语句的输出结果是()

    A.def

    B.d

    C.e

    D.0


    参考答案:C

  • 第19题:

    设有如下定义:intx=10,y=3,z;则语句 printf("%d/n",z=(x%y,x/y));的输出结果是()

    • A、1
    • B、0
    • C、4
    • D、3

    正确答案:D

  • 第20题:

    设有如下定义:int x=l,y=-1;,则语句:printf("%d/n",(x--&++y));的输出结果是()

    • A、1
    • B、0
    • C、-1
    • D、2

    正确答案:B

  • 第21题:

    设有如下定义:intx=l,y=-1;,则语句:printf(""%d/n"",(x--&++y));的输出结果是()

    • A、1
    • B、0
    • C、-1
    • D、2

    正确答案:B

  • 第22题:

    单选题
    若定义了charch[]={″abc/0def″},*p=ch;则执行printf(″%c″,*p+4);语句的输出结果是()
    A

    def

    B

    d

    C

    e

    D

    0


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

  • 第23题:

    填空题
    下列程序段的输出结果是()。  char str[ ]= “abc/0def/0ghi”, *q=str;  printf(“%s”,q+5);

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