更多“有以下程序:main(){char s[]="159",*P;P=s;printf("%c",*P++);printf("%c",*P++);}程序运行后的 ”相关问题
  • 第1题:

    有以下程序 main() { char s[]="ABCD", *p; for( p=s+1;p<s+4;p++) printf("%s\n",p); } 程序运行后的输出结果是

    A.ABCD BCD CD

    B.A B C D

    C.B C D

    D.BCD CD D


    正确答案:D
    解析:本题中首先定义一个字符数组s,并将字符串“ABCD”存到数组s中,定义了一个字符指针变量p,在接下来for循环中,循环体共执行了三次,第一次p指向3[1],所以此时输出的p所指的字符串的值为BCD,第二次循环p指向s[2],所以此时输出的p所指的字符串的值为CD,第三次循环p指向s[3],因此此时输出的p所指的字符串的值为D。所以,4个选项中选项D符合题意。

  • 第2题:

    有以下程序: main() {char s[]="159",*p; p=s; printf("%c",*p++);printf("%c",*p++); } 程序运行后的输出结果是 ______。

    A.15

    B.16

    C.12

    D.59


    正确答案:A
    解析:本题通过“p=s”将指针变量p指向字符数组s,在第一次输出时,由于++和*为同一优先级,“*p++”相于“*(p++)”。 p指向s[1],输出为s[1]的值。

  • 第3题:

    以下程序运行后的输出结果是______。 ss(char*s) { char*p=s; while(*p)p++; return(p-s); } main() { char*a="abded";int i; i=ss(a); printf("%d\n",i); }

    A.8

    B.7

    C.6

    D.5


    正确答案:D

  • 第4题:

    有以下程序: main() { char s[]="ABCD", *p; for( p=s+1;p<s+4;p++) printf("%s\n",p); } 程序运行后的输出结果是( )。

    A.ABCD BCD CD D

    B.A B C D

    C.B C D

    D.BCD CD D


    正确答案:D
    解析:本题中首先定义一个字符数组s,并将字符串"ABCD"存到数组s中,定义了一个字符指针变量p,在接下来for循环中,循环体共执行了三次,第一次p指向s[1],所以此时输出的p所指字符串的值为BCD,第二次循环p指向s[2],此时输出p所指的字符串的值为CD,第三次循环p指向s[3],此时输出的p所指的字符串的值为D。所以,4个选项中选项D符合题意。

  • 第5题:

    有以下程序 main() { char s[]="159",*p; p=s; printf ("%c",*p++);printf("%c",*p++); } 程序运行后的输出结果是______。

    A.15

    B.16

    C.12

    D.59


    正确答案:A