itgle.com
参考答案和解析
正确答案:B
解析:程序定义中std为一数组
更多“设有如下定义 struct ss { char name[10]; int age; char sex; } std[3],* p=std; 下面 ”相关问题
  • 第1题:

    设有如下定义 struct ss { char name[10]; int age;, char sex; } std[3],* p=std; 下面各输入语句中错误的是

    A.scanf("%d",&(*p).age);

    B.scanf("%s",&std.name);

    C.sean("%c",&std[0].sex);

    D.scanf("%c",&(p->sex));


    正确答案:B
    解析:本题考核的知识点是结构型数组的应用。选项A中“&(*p).age”代表的是std[0]age的地址,是正确的,选项C也是正确的,选项D先用指针变量引用结构型的成员sex,然后取它的地址,也是正确的,选项B中的“std.name"是错误的引用,因为std是数组名,代表的是数组的首地址,地址没有成员“name”。所以B选项为所选。

  • 第2题:

    10、vector对象中可以保存的数据的类型包括

    A.int

    B.char*

    C.std::string

    D.std::array<int,10>


    int;char*;std::string;std::array

  • 第3题:

    9、有以下说明和定义语句,下面各输入语句中错误的是 #include <stdio.h> int main() { struct student { int age; char sex; char name[8]; }; struct student std; struct student *p=&std; ....... return 0; }

    A.scanf("%c",&std[0].sex);

    B.scanf("%d",&(*p).age);

    C.scanf("%s",std.name);

    D.scanf("%c",&(p->sex));


    C

  • 第4题:

    设有如下定义 struct ss { char name[10]; int age; char sex; }std[3], * p=std; 下面各输入语句中错误的是

    A.cin>>(* p).age);

    B.cin>>std.name);

    C.cin>>std[0].sex);

    D.cin>>(p->.sex));


    正确答案:B
    解析:std是一个数组,其内可以存放三个结构体类型的数据。当std单独使用的时候表示一个指针,指向该数组首地址。因此不能直接用std和点操作符进行配对使用。指针操作符->只能和指针配对使用,点操作符只能和有名对象或变量配对使用。

  • 第5题:

    vector对象中可以保存的数据的类型包括

    A.int

    B.char*

    C.std::string

    D.std::array<int,10>


    int;char*;std::string;std::array