收藏 分销(赏)

C07结构体及共用体.doc

上传人:綻放 文档编号:8915105 上传时间:2025-03-07 格式:DOC 页数:3 大小:818.15KB 下载积分:8 金币
下载 相关 举报
C07结构体及共用体.doc_第1页
第1页 / 共3页
C07结构体及共用体.doc_第2页
第2页 / 共3页


点击查看更多>>
资源描述
实 验 报 告 六 课程名称:C 语言程序设计 成 绩: 实验项目名称:结构体、共用体 实验时间: 指导教师(签名) : 班级:计教 101 姓名:傅倩 学号:010701140 实 验 目 的: 1.掌握结构体类型变量的定义和使用; 2.掌握结构体类型数组的概念和使用; 3.掌握共用体的概念与使用; 4.掌握链表的各种典型的操作。 5. 理解和掌握枚举类型的说明、枚举变量的声明及其初始化,正确使用枚举值。 实 验 环 境: Turbo2.0 实 验 内 容 及 过 程: 1. 写出下列程序的运行结果,并上机验证是否正确。 main() { enum tean{my,your=4,his,her=his+10} ; printf("%d%d%d%d\n",my,your,his,her); } 程序的运行结果: 04515 2.下面程序的功能是:建立枚举类型 weekday,假设今天是星期二,计算十天后是星期几。请填空,并写 出运行结果。 实验步骤与要求: ①上机前请完成下列程序填空,并写出运行结果。 ②上机输入程序,并验证结果是否正确。 程序 1. main() {enum weekday{sun, mon ,tue, wed, thu, fri, sat}; enum weekday day; int i; day=tue; i=(day+10)%7; printf("\nThe day is %d", i ); } 程序运行结果是:The day is 5 程序 2. main() {enum weekday{sun, mon, tue, wed, thu, fri, sat}; char name[7][4]={"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"}; enum weekday day; day=tue; day=(enum weekday)((day+10)%7); printf("\nThe day is %s", name[ day ] ); } 程序运行结果是:The day is fri 第1页共7页 3.结构体和共用体的定义和使用。 实验步骤与要求: (1)上机前写出下列程序的运行结果。 (2)上机输入程序,并验证结果是否正确。 程序 1. typedef union { long i;int k[5];char c; }DATE; struct date { int cat;DATE cow;double dog;}too; DATE max; main() {printf("%d",sizeof(struct date)+sizeof(max)); } 程序运行结果: 30 程序 2. main() {union bt {int k; char c[2]; }a; a.k=-7; printf(″%o,%o\n″,a.c[0],a.c[1]); } 程序运行结果: 177771 ,177777 程序 3. main() { union 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); } 程序运行结果: 4,8 4.完成下列有关结构体与共用体的程序设计 (1)有五个学生,每个学生的数据包括学号,姓名,三门课的成绩,从键盘输入五个学生的数据,要求 打印出每个学生的平均成绩,以及最高分的学生的数据(包括学号,姓名,三门课的成绩,平均分数)。 实验步骤与要求: ①用一个函数输入五个学生的数据; ②用一个函数求总平均分; 第2页共7页 ③用函数找出最高分学生数据, ④总平均分和最高分的学生的数据都在主函数中输出。 (2)三个人围成一圈,从第一个人开始顺序报号 1,2,3。凡报到"3"者退出圈子,找出最后流在圈子中的人 原来的序号。 (3)建立一个链表,每个结点包括:学号,姓名,性别,年龄。输入一个年龄,如果链表中的结点所包 含的年龄等于此年龄,则将此结点删去。 实 验 结 果 及 分 析: 1 枚举类型定义的是常量,如果没有赋值,第一个值就为零,在赋值后,后一个数会自动加一。 2.1 枚举元素作为常量,它们是有值的,C 语言编译按定义时的顺序使它们的值为 0,1,2。。 。,所以 tue=2,i=(2+10)%7=5,所以输出的数是 5. 2.2 利用强制类型转换,把 5 赋值给 fri,然后输出字符串 fri. 3.1 sizeof 函数是计算字节的,要熟悉变量类型符所占的字节; 3.2 %o 输出的是八进制的数字,int 是十六位,按高低位排,不足的补 1,所以输出是八进制的数。 3.3 结构体与共用体的结合运用,共用体是看值大的。 4.(1) 循环语句,运用 scanf 函数输入,将结构体与指针结合使用。  本题中运用多个 for 4.(2) 第3页共7页
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服