A、80
B、a
C、0
D、97
正确答案:D
13、以下对C语言中共用体类型数据的叙述正确的是()。
A、可以对共用体变量名直接赋值
B、一个共用体变量中可以同时存放其所有的成员
C、一个共用体变量中不能同时存放其所有成员
D、共用体类型定义中不能出现结构体类型的成员
正确答案:C
14、若有以下说明和定义语句,则下面引用形式中不正确的是 ()。 struct student { int age; int num; }; struct student stu[3]={{1001,20},{1002,19},{1003,21}}; struct student *p; p=stu;
A、(p++)->num
B、p++
C、(*p).num
D、p=&stu.age
正确答案:D
15、以下scanf函数调用语句中,对结构体变量成员的不正确引用是()。 struct pupil {char name[20 ]; int age ; int sex; }pup[5],*p; p=pup;
A、scanf(“%s“,pup[0].name);
B、scanf(“%d“,&pup[0].age);
C、scanf(“%d“,&sex);
D、scanf(“%d“,P->age);
正确答案:C
16、当说明一个共用体变量时系统分配给它的内存是()。
A、各成员所需内存量的总和
B、结构中第一个成员所需内存量
C、成员中占内存量最大者所需的容量
D、结构中最后一个成员所需内存量
正确答案:C
17、设有以下说明,则下面不正确的叙述是()。 union data { int i; char c; float f; }un;
A、un所占的内存长度等于成员f的长度
B、un的地址和它的各成员地址都是同一地址
C、un可以作为函数参数
D、不能对un赋值,但可以在定义un时对它初始化
正确答案:C
18、定义结构体类型变量teach1,不正确的是()。
A、struct teacher {int num; int age; }; struct teacher teach1;
B、struct teacher {int num; int age; }teach1;
C、struct {int num; int age; }teach1;
D、struct {int num; int age; }teacher; struct teacher teach1;
正确答案:D
19、下面程序的运行结果是()。 #include <stdio.h> union data { int i; char c; double d; }a[2]; void main() {printf("%d\n",sizeof(a)); }
A、16
B、8
C、4
D、2
正确答案:A
20、以下对结构体变量stul中成员age的非法引用是()。 struct student {int age; int num; }stul,*p; p=&stul;
A、stul.age
B、student.age
C、p->age
D、(*p).age
正确答案:B
第十三章测试
1、运行下列程序,输出结果为()。 #include <stdio.h> int main() { int x=040; printf("%d\n",x=x<<1); return 0;}
A、100