




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、.第7章自定义数据类型习题一选择题:1当定义一个结构体变量时,系统分配给它的内存空间是【 】。 A)结构中一个成员所需的内存量 B) 结构中最后一个成员所需的内存量 C)结构体中占内存量最大者所需的容量 D) 结构体中各成员所需内存量的总和2若有以下说明,对初值中整数2的正确引用方式是【 】。static struct char ch; int i; double x; a23=a,1,3 .45,b,2,7.98,c,3,1.93I d,4,4.73,e,5,6.78,f,6,8.79 ; A) a11.i B) a01.i C) a00.i D) a02.i3根据以下定义,能打印字母M的语
2、句是【 】。struct p char name9; int age;c10=“Jobn”,17,”Paul”,19,”Mary”,18,”Adam”,16; A) printf(“c”,); B) printf(“c”,1); C) printf(“c”,); D) printf(“c”,0);4以下说明和语句中,已知int型数据占两个字节,则以下语句的输出结果是【 】。struct st char al0; int b; double c;printf(“d”,sizeof(struct st); A) 0 B) 8 C) 20 D)
3、 25以下说明和语句中,对结构体变量std中成员id的引用方式不正确的是【 】。struct work int id; int name; std, *p;p=&std; A) std.id B) *p.id C) (*p).id D) &std.id6如设有如下定义,若要使px指向rec中的成员x,正确的赋值语句是【 】。 struct aa int x; float y; rec, *px;A)*px=rec.x; B) px=&rec.x C) px=(struct aa*)rec.x; D) px=(struct aa*)&rec.x;7下列程序的输出结果是【 】。#includema
4、in() struct date int y,m,d; ; union long i; int k; char ii; mix; printf(“d,dn”,sizeof(struct date),sizeof(mix); A) 6,2 B) 6,4 C) 8,4 D) 8,68设有以下结构体定义,若要对结构体变量p的出生年份赋值下面正确的语句是【 】。 struct date int y; int m; int d; struct worklist char name20; char sex; struct date birthday; p; A)y=1976; B)birthday.y=1
5、976; C)p.birthday.y=1976;D)p.y=1976;9若有以下说明语句: struct p char name20; int age; char sex; a=“li ming”,20,m,p=a;则对字符串“li ming”的错误引用方式是【 】。A)(*p).name B)* C) D)10当说明一个联台体变量时,系统分配给它的内存为【 】。 A) 联台体中的一个成员所需的内存量 B) 联台体中最后一个成员所需的内存量 C) 联台体体中占内存量最大者所需容量 D) 联台体中各成员所需内存量的总和11设有以下说明,则下面不正确的叙述是【
6、 】。union data int I; char c; float f;a; A) a所占的内存长度等于成员f的长度 B) a的地址和它的各成员地址都是同一地址 C) a可以作为函数参数 D) 不能对a赋值,但可以在定义a时对它初始化12下面程序的运行结果是【 】。main() union u char *name; int age;int income; s; =”wanghong”; s.age=26; s.income=2000; printf(“%dn”,s.age);A)8 B)1000 C)0 D)不确定13已知字符0的ASCII码为十六进制的30,下面程序的输出为【
7、 】。main() union char c; unsigned int a4; z; z.a0=0x39; z.al=0x36; printf(“%cn”, z.c); A)6 B)9 C)0 D)314若定义共用(联合)体数据类型如下union int a; int b; x,y;执行语句x.a=3;x.b=4;y.b=x.a*2;后,则y.a的值为【 】。A)3 B)4 C)6 D)815定义以下结构体数组struct date int year; int month;struct s struct date birth; char name20;x4=2010,8,Beijing,19
8、99,9,Nanjin;语句printf(%s,%d,, x0.birth.month);的输出结果为【 】。A) Beijing,8 B) Nanjin,9 C) Beijing,2010 D) Nanjin,199916运行下列程序段,输出结果是【 】。struct country int num; char name20; x5=1,”china”,2,”USA”,3,”France”,4,”England”,5,”Spanish”; struct country *p; p=x+3: printf(“d,%c,*p.num,(*p)name2); A)3,a B)4,g
9、C)2,U D)5,S17在以下程序段中,已知int型数据占两个字节,则输出结果是【 】。union un int I; double y;struct st char a10; union un b;printf(“%d”,sizeof(struct st);A)14 B)18 C)20 D)1618定义以下结构体数组struct st char name20 ; int age;c10=“zhang”,16,”Li”,17,”Ma”,18,”Huang”,19;执行语句printf(“%d,%c”,c2.age,*(+2)的输出结果为【 】。A)17,i B)18,M C)1
10、8,a D)18,u19若定义以下结构体数组struct contry int num; char name20;x5=1,”China”,2,”USA”,3,”France”,4,”England”,5,”Spain”;执行for(i=1;i5;i+) printf(“dc”,xi.num,2);输出结果为【 】。 A)2A3a4g5a B)IS2r3n4p C)1A2a3g4a D)2A3n4l5n20定义以下结构体数组struct date int year; int month; ;struct s struct date birth; char name20; x4=1
11、977,8,hangzhou,1975,9,Tianjin;语句printf(%S,%d,,x1.birth.year);的输出结果为【 】。A) a,1977 B) hangzhou,1975 C) Tianjin,1975 D) Tianjin,197521定义以下结构体类型 struct s int a; char b; float f; ;语句printf(%d,sizeof(struct s)的输出结果为【 】。A) 3 B)4 C) 6 D)722定义以下结构体数组struct c int x; int y;x2=1,3,2,7;语句printf(%d,x0.x*x1
12、.x)的输出结果为【 】。A) 2B) 6C) 14D) 2123定义以下结构体类型 struct s int a; float f; ; 语句printf(%d,sizeof(struct s)的输出结果为【 】。A) 2 B) 3 C) 4 D) 6 24定义以下结构体数组struct c int x; float y;x2=1,3.2,2,4.1;语句printf(%d-%f,x0.x,x1.y)的输出结果为【 】。 A) 1-3.2 B) 2-4.1 C) 2-4.1 D) 1-4.125下面程序运行后,输出结果是【 】。main() struct int num; char name
13、10; s3=1,china,3,USA,4,England ; printf(n%d,%s,s0.num,);A)1,England B) 4,USA C) 3,China D) 2,USA26定义以下结构体数组struct date int year; int month; ;struct s struct date birth; char name20; x4=1977,8,hangzhou,1975,9,Tianjin; 语句printf(%c,%d,1,x1.birth.year);的输出结果为【 】。A) a,1977 B) hangzhou,1977
14、C) i,1975 D) Tianjin,1975二、读程序写结果1.以下程序的运行结果是【 】。main() struct EXAMPLE struct int x; int y; in; int a; int b; e; e.a=1; e.b=2; e.in.x=e.a*e.b; e.in.y=e.a+e.b; printf(d,d”, e.in.x, e.in.y) ;三填空题1.以下程序用以输出结构体变量bt所占内存单元的字节数,请在【1】内填 上适当内容。struct ps double a; char arr20;main() struct ps t; printf(“t size
15、: %dn”,【1】);2.以下程序用来按学生姓名查询其排名和平均成绩。查询可连续进行,直到键入0时结束,请在【】内填入正确内容。#include#include#define NUM 4struct student char *name; float score; int rank;【1】 stu=“Tom”,89.3, “Mary”,78.2, “Jack”, 95.1, “Jim”, 90.6 ;main()( char str10; int I; do printf(“Enter a name:”); scanf(“s”,str); for(i=0;i=NUM) printf(“Not foundn”); while(s
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建筑设计答辩汇报
- 冷链物流行业发展前景分析
- 2025建筑工程合同争议解析
- 2025物流服务外包合同(专业律师审核起草修订)
- 幼儿园假期安全教育指南
- 2025租房合同协议书标准版
- 2025合同管理规章:公章、资质、合同及其它证书的使用与保管办法
- 2025投资合同转让协议书
- 手术室细节护理
- 2025住宅房屋租赁合同协议范本
- SH/T 1673-1999工业用环己烷
- GB/T 9661-1988机场周围飞机噪声测量方法
- GB 29541-2013热泵热水机(器)能效限定值及能效等级
- FZ/T 07019-2021针织印染面料单位产品能源消耗限额
- 重症医学科各项规章制度汇编
- 社会组织培训概述课件
- 春节作文优秀课件
- 三角函数的应用论文Word版
- 农业创业风险控制与防范培训课件
- 生物制造国内外状况课件
- 幼儿园大班数学口算练习题可打印
评论
0/150
提交评论