《《结构体练习题》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《结构体练习题》PPT课件.ppt(9页珍藏版)》请在三一办公上搜索。
1、1、以下程序的输出结果是A A)0 B)1 C)3 D)6main()struct cmp int x;int y;cnum2=1,3,2,7;printf(“%dn”,cnum0.x/cnum1.y*cnum1.x);2、根据以下定义,能输出字母M的语句是D A)printf(%cn,class3.name);B)printf(%cn,class3.name1);C)printf(%cn,class2.name1);D)printf(%cn,class2.name0);struct person char name9;int age;struct person class10=John,17
2、,Paul,19,Mary,18,Adam,16,;,3、有以下说明和定义语句 struct student int age;char num8;struct student stu3=20,200401,21,200402,109,200403;struct student*p=stu;以下选项中引用结构体变量成员的表达式错误的是D A)(p+)-num B)p-num C)(*p).num D)stu3.age4.若有以下说明和语句,则值为6的表达式是D A)p+-n B)p-n+C)(*p).n+D)+p-n struct st int n;struct st*next;struct s
3、t a3,*p;a0.n=5;a0.next=,6设有如下定义:struct sk int a;float b;data,*p;若有p=A.Zhang B.Zhao C.Wang D.18,7.下面程序的输出结果为(C)#include struct st int x;int*y;*p;int dt4=10,20,30,40;struct st aa4=50,A.10 B.50 C.51 D.60 20 60 60 70 20 21 21 31,9.有以下程序其运行结果是(C)。#include struct st int x,y;data2=1,10,2,20;void main()stru
4、ct st*p=data;printf(%d,p-y);printf(%dn,(+p)-x);A.10,1 B.20,1C.10,2 D.20,2,8.下面结构体的定义语句中,错误的是(B)。A.struct ord B.struct ordint x;int x;int y;int y;int z;int z;struct ord a;struct ord a;C.struct ord D.struct int x;int x;int y;int y;int z;int z;a;a;,10设有如下说明语句:struct ex int x;float y;char z;example;则下面的
5、叙述中不正确的是_B_。A)struct 是结构体类型的关键字B)example是结构体类型名C)x、y、z都是结构体成员名D)struct ex是结构体类11设有如下定义:struct ss char name10;int age;char sex;std3,*p=std;下面各输入语句中错误的是_B_。A)scanf(%d,13C语言若有如下定义:union data int i;char ch;double f;b;则共用体变量b占用内存的字节数是:CA.1 B.2 C.8 D.1112有以下程序:struct s int x,y;data2=10,100,20,200;main()st
6、ruct s*p=data;printf(%dn,+(p-x);程序运行后的输出结果是_11_。,14C语言共用体类型变量在程序执行期间:BA.所有成员一直驻留在内存中 B.只有一个成员驻留在内存中C.部分成员驻留在内存中 D.没有成员驻留在内存中15设有以下说明,则下面的叙述不正确的是:C union data int i;char c;float f;un;A.un所占内存长度等于成员f的长度B.un的地址和它的各成员地址都是同一地址C.un可以作为函数参数D.不能对un赋值,不能在定义un时对它初始化,16以下对C语言中共用体类型数据的叙述正确的是:CA.可以对共有体变量名直接赋值B.一个共用体变量中可以同时存放其所以成员C.一个共用体变量中不可以同时存放其所以成员D.共用体类型定义中不能出现结构体类型的成员17当说明一个共用体变量时系统分配给它的内存是:CA.各成员所需内存量的总和 B.结构中第一个成员所需的内存量C.成员中占内存量最大者所需的容量 D.结构中最后一个成员所需内存量,