niusouti.com

设有以下程序段:struct MP3{ char name[20];char color;float price;}std,*ptr;ptr=&std:若要引用结构体变量std中的color成员,写法错误的是( )。A.std.colorB.ptr->colorC.std->colorD.(*ptr)color

题目

设有以下程序段:

struct MP3

{ char name[20];

char color;

float price;

}std,*ptr;

ptr=&std:

若要引用结构体变量std中的color成员,写法错误的是( )。

A.std.color

B.ptr->color

C.std->color

D.(*ptr)color


相似考题
更多“设有以下程序段:struct MP3{ char name[20]; char color; float price;}std,*ptr;ptr=&std ”相关问题
  • 第1题:

    设有如下的程序段: char str[]="HelloWorld"; char*ptr; ptr=str; 执行上面的程序段后,*(ptr+10)的值为( )。

    A.'\0'

    B.'0'

    C.不确定的值

    D.'0'的地址


    正确答案:A
    解析:本题涉及字符数组和指针两个知识点:①在C语言中,字符数组在存放字符串时会自动在末尾加上'\0',所以题中数组str有11个元素;②ptr指向数组str的首地址,ptr+10是指向str[10],*(ptt+10)是引用str[10]的值(即结束符'\0')。

  • 第2题:

    设有如下的程序段: char str[]="Hello"; char *ptr; ptr=str; 执行完上面的程序段后,*(ptr+5)的值为( )。

    A.'o'

    B.'\0'

    C.不确定的值

    D.'o'的地址


    正确答案:B
    解析:本题考查字符数组的结束标志。ptr=str是将串str的首地址赋给了指针变量ptr,所以ptr+5指向字符串str的第六个数组元素,即是串的隐含结束标志'\0',*(ptr+5)='\0',最后的结果为'\0'。

  • 第3题:

    设有以下程序段 struct MP3 { char name[20]; char color; float price; }std,*ptr; ptr=&std; 若要引用结构体变量std中的color成员,写法错误的是()。

    A.std.color

    B.ptr->color

    C.std->color

    D.(*ptr) .color


    std->color

  • 第4题:

    设有下列的程序段: char str[]="HelloWorld"; char*ptr; ptr==str; 执行上面的程序段后,*(ptr+10)的值为( )。

    A.'\0'

    B.'0'

    C.不确定的值

    D.'0'的地址


    正确答案:A
    解析:本题涉及字符数组和指针两个知识点:①在C语言中,字符型数组在存放字符串时会自动在末尾加上'\0',所以题中数组str有11个元素;②ptr指向数组str的首地址,ptr+10是指向str[10],*(ptr+10)是引用str[10]的值。

  • 第5题:

    设有以下程序段: struct MP3 { char name[20]; char color; float price; }std,*ptr; ptr=&std: 若要引用结构体变量std中的color成员,写法错误的是( )。

    A.std.color

    B.ptr->color

    C.std->color

    D.(*ptr)color


    正确答案:A
    本题中要引用结构体变量std中的color,要使用指针,而std.color不是一个指针类型,所以答案选择A。