- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C_lab9-1_结构体
实验9-1 结构体
【知识点回顾】
【典型例题】
例题1
例题2,
例题3,
【QA】
Q:结构体类型和结构体变量有何区别?
A:结构体类型是一种由用户设计和定义的数据类型,编译器由此识别变量的数据类型,但并不为结构体数据类型分配空间。结构体变量则是用已经定义好的结构体类型去声明的变量,编译器根据结构体类型为变量分配空间。
Q:对结构体变量可以进行哪些操作?
A:可以把一个结构体变量赋给同类型的另一个结构体变量、可以获取结构体变量的地址、可以访问结构体变量的成员、可以向对普通变量那样操作结构体变量的成员、可以使用sizeof运算符来确定结构体变量的长度,可以存取结构体变量的地址及其成员地址等。
【实验内容】
现有商店的库存信息表,包括商品名称、库存量、商品出厂价、商品入库日期,如某商品名称为“CU1105”,库存量为1200件,商品出厂价为18.15元,入库日期为“2011年3月15日”。要求设计程序,将该商品信息存入一个结构体变量中,并输出到屏幕。
设计一个程序,建立描述图书信息的结构,存储如下图书信息,并输出到屏幕。
针对课件中最后一个示例:班级学生的成绩统计,重新设计程序,使得各项功能要求以函数的形式完成。说明如下:
主函数中声明结构体数组
设计成绩录入函数,完成班级学生的信息录入功能,并于录入的同时,完成每个学生的总分平均分计算。
设计班级课程平均分计算函数,完成班级每门课程的平均分计算功能。
【课后练习】
选择题:
已知学生记录描述如下,设置变量s中的“生日”应是“1984年11月11日”,下列对“生日”的正确赋值方式是__D______。
A. year = 1984; month = 11; day = 11;
B. birth.year = 1984; birth.month = 11; birth.day = 11;
C. s.year = 1984; s.month = 11; s.day = 11;
D. s.birth.year = 1984; s.birth.month = 11; s.birth.day = 11;
以下对结构体类型变量的定义不正确的是___D_____。
A.
B.
C.
D.
设有以下说明语句,则下面的叙述不正确的是:__C______
A. struct是结构体类型的关键字
B. struct stu是用户定义的结构体类型
C. stutype是用户定义的结构体类型名
D. a和b都是结构体成员名
根据下面的定义,能打印出字母M的语句是__D______。
A. printf(“%c\n”, class[3].name);
B. printf(“%c\n”, class[3].name[1]);
C. printf(“%c\n”, class[2].name[1]);
D. printf(“%c\n”, class[2].name[0]);
当说明一个结构体变量时系统分配给它的内存是___A_____。
A. 各成员所需内存量的总和。
B. 结构中第一个成员所需内存量。
C. 成员中占内存量最大者所需的容量。
D. 结构中最后一个成员所需内存量。
下面对typedef的叙述中不正确的是__b。
A. 用typedef可以定义各种类型名,但不能用来定义变量。
B. 用typedef可以增加新类型。
C. 用typedef只是将已存在的类型用一个新的标识符来代表。
D. 使用typedef有利于程序的通用和移植。
填空题:
定义结构体类型的关键字是__ STRUCT ______
有这样一个结构体定义和变量声明:struct abc{ char x; int y[2]; char z[20];}value={‘Y’,10,20,”just a test.”};
用printf语句输出结构体变量value的各成员值printf(“%c %d %d %s “, value。 x, value.y[0], value.y[1], value.z); ________ ________ ________ ______
将字符串“hello”存入结构体变量value的字符数组中。__ strcpy(value.z,”hello”) ________ ________ ________ ______
声明一个指针vp,将其初始化为指向value的变量_struct abc *vp=v
文档评论(0)