C语言 实验八 结构体和共用体实验.doc
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
C 语言结构体和共用体实验 一、实验目的与要求 本实验的目的是掌握结构体类型的概念和定义方法,以及结构体变量的定义和应用。同时,掌握指向结构体变量的指针变量的概念和应用,特别是链表的概念和应用。此外,还需要掌握运算符“.”和“->”的应用,以及共同体的概念和应用。 二、结构体类型的概念和定义方法 在 C 语言中,结构体是一种用户自定义的数据类型,可以包含多个成员变量,例如整数、浮点数、字符数组等。结构体的定义使用 struct 关键字,例如: ```c struct date { int day; int month; int year; int yearday; char mon_name[5]; }; ``` 这里定义了一个名为 date 的结构体,它包含五个成员变量:day、month、year、yearday 和 mon_name。 三、结构体变量的定义和应用 结构体变量是指向结构体类型的变量,可以使用 struct 关键字定义,例如: ```c struct date w; ``` 这里定义了一个名为 w 的结构体变量,类型为 date。 四、指向结构体变量的指针变量 指向结构体变量的指针变量是指向结构体类型的指针,可以使用指针运算符“->”访问结构体成员变量,例如: ```c day_of_year(struct date *p) { int i, day, leap; leap = !(p->year % 4 != 0); day = p->day; for (i = 1; i < p->month; i++) day += day_tab[leap][i]; p->yearday = day; return 0; } ``` 这里定义了一个名为 day_of_year 的函数,它接受一个指向结构体类型的指针变量 p,并计算该日期是这一年的第几天。 五、链表的概念和应用 链表是一种数据结构,链表中的每个节点都包含一个指向下一个节点的指针,例如: ```c struct node { int num; struct node *next; }; ``` 这里定义了一个名为 node 的结构体,它包含一个整数成员变量 num 和一个指向下一个节点的指针 next。 六、共同体的概念和应用 共同体是一种数据结构,它的定义形式与结构体相似,但它们的含义是不同的。共同体变量所占的内存长度等于最长的成员的长度。共同体类型可以出现在结构体类型定义中,也可以定义共同体数组。 七、实验内容和步骤 实验内容包括: 1. 输入具体的年、月、日,输出该日期是这一年的第几天。 2. 建立一条单项链表,然后将此链表逆置成。 实验步骤包括: 1. 编写程序代码,实现实验内容。 2. 运行程序,观察结果。 八、结论 通过本实验,我们掌握了结构体类型的概念和定义方法,以及结构体变量的定义和应用。同时,我们也掌握了指向结构体变量的指针变量的概念和应用,特别是链表的概念和应用。此外,我们还了解了共同体的概念和应用。
- 粉丝: 87
- 资源: 2万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助