niusouti.com
更多“有如下程序段,请指出”p所代表的是()。int **p,*s,k=20;S=&k;p=&s;A.sB.&kC.*pD.k ”相关问题
  • 第1题:

    请选出正确的程序段______。

    A.int*p scanf("%d"",p); ……

    B.int*s,k; *s=100; ……

    C.int*s,k; char *p,c; s=&k; p=&c; *p='a'; ……

    D.int *s,k; char *p,e; s=&k; p=&c; s=p; *s=1; ……


    正确答案:C
    解析:本题的A和B犯了一个同样的错误,即指针变量p定义后并没有指向具体的变量,因此不能进行赋值操作。另外,在选项D中,s是int指针变量,p是char型指针变量,所指向的内存单元所占用的字节数是不同的,因而不能将字符指针变量p的值赋给整型指针变量s。

  • 第2题:

    请选出正确的程序段

    A.int *p; scanf("%d",p); …

    B.int *s,k; *s=100; …

    C.int *s,k; char *p,c; s=&k; p=&c; *p='a'; …

    D.int *s,k; char *p,e; s=&k; p=&c; s=p; *s=1; …


    正确答案:C
    解析:本题的选项A)和B)犯了同样的错误,即指针变量在定义后并没有指向具体的变量。也就是说,指针变量中没有确定的地址值,它的值是不可预见的,所指的单元也是不可预见的,因此不能进行赋值操作。另外,在选项D)中,s是血型指针变量,p是char型指针变量,所指向的内存单元所占用的字节数是不同的,因而不能将字符指针变量p的值赋给整型指针变量s。

  • 第3题:

    请选出下面正确的程序段( )。

    A.int *s; scanf("%d",s); ┆

    B.int *s,k; *s=100; ┆

    C.int *s,k; char *p, c; s=&k; p=&c; *p='a'; ┆

    D.int *s,k; char *p, c; s=&k; p=&c; s=p; *s=1; ┆


    正确答案:C
    解析:本题的选项A)和B)犯了一个同样的错误,即指针变量s定义后并没有指向具体的变量。也就是说,s中没有确定的地址值,它的值是不可预见的,所指向的单元也是不可预见的,因此不能进行赋值操作。另外,在选项D)中,s是int型指针变量,p是char型指针变量,指向的内存单元所占用的字节数是不同的,因而不能将字符指针变量p的值赋给整型指针变量s。

  • 第4题:

    请选出正确的程序段

    A.int*p; scanf("%d",p); …

    B.int *s,k; *s=100; …

    C.int *s,k; char *p,c; s=&k; p=&c; *p='a'; …

    D.int *s,k; char *p,e; s=&k; p=&c; s=p; *s=1; …


    正确答案:C
    解析: 本题的选项A)和B)犯了同样的错误,即指针变量在定义后并没有指向具体的变量。也就是说,指针变量中没有确定的地址值,它的值是不可预见的,所指的单元也是不可预见的,因此不能进行赋值操作。另外,在选项D)中,s是int型指针变量,p是char型指针变量,所指向的内存单元所占用的字节数是不同的,因而不能将字符指针变量p的值赋给整型指针变量s。

  • 第5题:

    请选出正确的程序段

    A.int *p; scanf("%d",p); …

    B.int *s, k; *s=100; …

    C.int *s, k; char *p, c; s=&k; p=&c; *p=′a′; …

    D.int *s, k; char *p, e; s=&k; p=&c; s=p; *s=1; …


    正确答案:C
    解析:本题的选项A)和B)犯了同样的错误,即指针变量在定义后并没有指向具体的变量。也就是说,指针变量中没有确定的地址值,它的值是不可预见的,所指的单元也是不可预见的,因此不能进行赋值操作。另外,在选项D)中,s是int型指针变量,p是char型指针变量,所指向的内存单元所占用的字节数是不同的,因而不能将字符指针变量p的值赋给整型指针变量s。