- 8
- 0
- 约3.71千字
- 约 11页
- 2025-09-01 发布于福建
- 举报
第PAGE页共NUMPAGES页
C语言结构体与联合体操作练习题及答案
一、单选题(每题2分,共10题)
题目
1.以下关于结构体的描述,错误的是?
A.结构体可以嵌套定义
B.结构体变量可以在定义时直接赋值
C.结构体的大小是成员大小的总和
D.结构体可以使用typedef重新命名
2.以下关于联合体的描述,正确的是?
A.联合体的所有成员共享同一块内存
B.联合体的成员类型必须相同
C.联合体的大小是最大成员的大小
D.联合体变量可以在定义时直接赋值任意成员
3.定义如下结构体:
c
structPoint{
intx;
inty;
};
要创建一个结构体变量p并初始化为(1,2),以下写法正确的是?
A.structPointp={1,2};
B.structPointp=(1,2);
C.structPointp={x:1,y:2};
D.structPointp={1,{2}};
4.定义如下联合体:
c
unionData{
inti;
floatf;
charstr[20];
};
若要获取unionData变量d中存储的整数部分,以下操作正确的是?
A.printf(%d\n,d.i);
B.printf(%d\n,*(int*)d);
C.d.i=*(int*)d;
D.printf(%d\n,d.f);
5.以下代码段中,关于结构体嵌套的写法,错误的是?
c
structBook{
chartitle[50];
structAuthor{
charname[50];
intage;
}author;
};
A.可以通过Book.b.author访问作者姓名
B.structAuthor是Book的嵌套类型
C.Book结构体的大小包含Author的大小
D.Author结构体可以独立使用
答案
1.C
2.A
3.A
4.B
5.D
二、填空题(每题3分,共5题)
题目
1.定义结构体`Student`包含学号(int)、姓名(char[20])和成绩(float),请写出完整的定义。
2.定义联合体`Color`包含红色(int)、绿色(int)和蓝色(int),请写出完整的定义。
3.若有结构体`Person`,如何通过指针访问名为`name`的成员(假设name是char类型数组)?
4.写出代码,创建一个结构体数组`students[3]`,包含三个`Student`结构体元素,并为每个元素赋初值。
5.定义一个结构体`Box`,包含一个`unionData`(来自上一题的定义)和一个`intcount`成员。
答案
1.`structStudent{intid;charname[20];floatscore;};`
2.`unionColor{intred;intgreen;intblue;};`
3.`(*pperson)-name`或`pperson-name`
4.
c
structStudent{intid;charname[20];floatscore;};
structStudentstudents[3]={
{1,Alice,90.5},
{2,Bob,85.0},
{3,Charlie,92.0}
};
5.`structBox{unionDatadata;intcount;};`
三、简答题(每题5分,共4题)
题目
1.解释结构体和联合体的主要区别,并说明各自的适用场景。
2.当结构体成员包含指针时,如何正确初始化和释放结构体变量?
3.编写代码,定义结构体`Car`包含品牌(char[20])、型号(char[20])和年份(int),然后创建一个`Car`结构体变量并初始化。
4.编写代码,定义联合体`Number`包含整数(int)和浮点数(float),然后创建一个`Number`联合体变量,先赋值整数,再赋值浮点数,最后打印两个值。
答案
1.结构体和联合体的主要区别:
-结构体:每个成员都有独立的内存空间,总大小是各成员大小的总和。
-联合体:所有成员共享同一块内存,总大小等于最大成员的大小。
适用场景:
-结构体:适用于需要存储多种不同类型数据的场景,如记录信息。
-联合体:适用于需要在同一内存位置存储不同类型数据的场景,如数据解析。
2.初始化:
c
structNode{
int*data;
};
structNoden={malloc(sizeof(i
您可能关注的文档
- 保健纺织品功能性材料选择与应用测试试题详解.docx
- 保健医生考试模拟试题及答题技巧解析.docx
- 保健医生专业测评试题集及答案详解.docx
- 保健员专业知识考试重点题目解析与答案.docx
- 保教实践案例分析题集及解答指南.docx
- 3D建模设计基础测试题与答案解析.docx
- 4D心理测试试题及答案详解手册.docx
- 5道小学英语听力题及参考答案.docx
- 7级安全生产管理知识测试题及答案.docx
- 10道职场心理测试题目及解析.docx
- 03-2 2025年度民主生活会征求意见座谈会主持词.docx
- 03-1 2025年度民主生活会主持讲话提纲.docx
- 02-1 会前学习-《县以上党和国家机关党员领导干部民主生活会若干规定》相关要求.docx
- 在2025年度民主生活会上的总结讲话三篇.docx
- 在2025年度民主生活会上的总结讲话三篇 (3).docx
- 市委宣传部2025年度民主生活会查摆问题整改方案两篇.docx
- 在市行政审批和政务信息管理局机关2026年全体干部政绩观教育大会上的党课讲稿.docx
- X市应急管理局2026年度安全生产监督检查计划.docx
- 2025年度民主生活会领导班子对照检查材料(五个带头)三篇.docx
- 2025年度民主生活会“五个带头”个人对照检查材料三篇.docx
原创力文档

文档评论(0)