执行下列语句后,输出结果为steven的是 Char * str="steven"; cout. write(str, );A.strlen(str)B.sizeof(str)C.strlen(str+1)D.sizeof(str-1)

题目

执行下列语句后,输出结果为steven的是 Char * str="steven"; cout. write(str, );

A.strlen(str)

B.sizeof(str)

C.strlen(str+1)

D.sizeof(str-1)


相似考题
更多“执行下列语句后,输出结果为steven的是 Char * str="steven"; cout. write(str, );A.str ”相关问题
  • 第1题:

    执行下列语句后,输出结果为steven的是

    char*str="steven";

    eout.write(str, );

    A.strlen(str)

    B.sizeof(str)

    C.strlen(str+1)

    D.sizeof(str-1)


    正确答案:A
    解析:本题考察在C++中,字符串的存放方式,以及不同的字符串函数的作用。其中,strlen是专门用于求字符串长度的,其自动去掉字符数组后面的那个‘\0’,而sizeof后面求的则是str指针,指针在目前的32位机器中是固定大小的,其值与字符串的长度是没有关系的。故可以排除B和D。而选项C则将‘\0’多考虑了一次。

  • 第2题:

    下列程序的运行结果为()。 include voidabc(char*str) {int a,b,i,j; for(i=j=0;str[i]

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

    #include<stdio.h>

    voidabc(char*str)

    {int a,b,i,j;

    for(i=j=0;str[i]!='\0';i++)

    if(str[i]!='a')

    str[j++]=str[j];

    str[j]='\0';

    }

    void main()

    {char Str[]="abcdef';

    abc(str);

    printf("str[]=%s",str);

    }

    A.str[]=bcdef

    B.str[]=abcdef

    C.str[]=a

    D.str[]=ab


    正确答案:A
    解析:本题考查函数调用时的参数传递。通过函数abc的执行,将字符串中的字母a去掉,保留剩下的。由于是通过指针调用,所以改变字符串的结果。

  • 第3题:

    下列程序的运行结果为includevold abc(char*str){int a,b; for(a=b=0;str[a]!='\0';a+

    下列程序的运行结果为 #include<stdio.h> vold abc(char*str) { int a,b; for(a=b=0;str[a]! ='\0';a++) if(str[a]!='c') str[b++]=str[a]; str[b]='\0';} void main() { char str[]="abcdef"; abc(str); printf("str[]=%s",str);}

    A.str[]=abdef

    B.str[]=abcdef

    C.str[]=a

    D.str[]=ab


    正确答案:A
    解析:本题考查了用字符指针引用字符数组中的字符及对字符的操作。函数abc()的for语句执行过程是:丛字符指针str所指向的字符数组的第一个元素开始,逐一判断字符是否为'c',若不是就执行一次数组元素的赋值过程,若字符为'c'就不执行,所以答案为A)。

  • 第4题:

    下列程序的运行结果为()。includevoid abc(char*str){int a,b,i,j; for(i=j=0;str[i]!=

    下列程序的运行结果为( )。 #include<stdio.h> void abc(char*str) { int a,b,i,j; for(i=j=0;str[i]!='\0';i++) if(str[i]!='a' str[j++]=str[i]; str[j]='\0'; } void main() { char str[]="abcdef"; abc(str); printf("str[]=%s",str); }

    A.str[]=bcdef

    B.str[]=abcdef

    C.str[]=a

    D.str[]=ab


    正确答案:A
    解析:本题考查函数调用时的参数传递。通过函数abc的执行,将字符串中的字母a去掉,保留剩下的。由于是通过指针调用,所以改变字符串的结果。

  • 第5题:

    下列程序的运行结果为includevoid abc(char * str){ int a,b;for(a=b=0;str[a]!='\0';

    下列程序的运行结果为 #include<stdio.h> void abc(char * str) { int a,b; for(a=b=0;str[a]!='\0';a++) if(str[a]!='c') str[b++]=str[a]; str[b]='\0';} void main() { char str[]="abcdef"; abc(str); printf("str[]=%s",str);}

    A.str[]=abdef

    B.str[]=abcdef

    C.str[]=a

    D.str[]=ab


    正确答案:A
    解析:本题考查了用字符指针引用字符数组中的字符及对字符的操作。函数abc()的for语句执行过程是:从字符指针str所指向的字符数组的第一个元素开始,逐一判断字符是否为“c”,若不是就执行一次数组元素的赋值过程,若字符为“c”就不执行。