【单选题】有如下定义struct person{char name[9]; int age;};struct person class[10]={“Tom”,17,“John”,19,“Susan”,18,“Adam”,16,};根据上述定义,能输出字母A的语句是( )。
A. printf(“%c\n”,class[3].name);
B. printf(“%c\n”,class[3].name[0]);
C. printf(“%c\n”,class[3].name[1]);
D. printf(“%c\n”,class[2].name[3]);
查看答案
【单选题】存放100个学生的数据、包括学号、姓名、成绩。在如下的定义中,不正确的是( )。
A. struct student {int sno; char name[20];float score;} stu[100];
B. struct student stu[100] {int sno; char name[20]; float score};
C. struct{ int sno; char name[20];float score;} stu[100];
D. struct student {int sno; char name[20]; float score;}; struct student stu[100];
【单选题】设有定义语句“struct {int x; int y;} d[2]={{1,3},{2,7}};”则“printf(“%d\n”,d[0].y/d[0].x*d[1].x);”输出的是( )。
A. 0
B. 1
C. 3
D. 6
【单选题】已知: struct sk { int a; float b; }data, *p; 若有p=&data,则对data中的成员a的正确引用是( )。
A. (*p).data.a
B. p->data.a
C. (*p).a
D. p.data.a
【单选题】设有如下定义:struck sk{ int a;float b;}data;int *p;若要使P指向data中的a域,正确的赋值语句是( )。
A. p=&a;
B. p=data.a;
C. p=&data.a;
D. *p=data.a;