学习数据结构时总是碰到结构体、链表、指针等知识,这些知识在谭浩强的C语言书里都有,现在忘得差不多了,刚才又复习了一下数据结构,算是温故而知新吧。
定义一个结构的一般形式为:
struct 结构名
{成员表列};
成员表列由若干个成员组成,每个成员都是该结构的一个组成部分。对每个成员也必须作类型说明,其形式为:
类型说明符 成员名;
成员名的命名应符合标识符的书写规定。例如:
- struct stu
- {
- int num;
- char name[20];
- char sex;
- float score;
- };
在这个结构定义中,结构名为stu,该结构由4 个成员组成。第一个成员为num,整型变量;第二个成员为name,字符数组;第三个成员为sex,字符变量;第四个成员为score,实型变量。应注意在括号后的分号是不可少的。结构定义之后,即可进行变量说明。凡说明为结构stu 的变量都由上述4 个成员组成。由此可见, 结构是一种复杂的数据类型,是数目固定,类型不同的若干有序变量的集合。
定义变量的三种方式:
1、先定义结构,再说明结构变量。
如:
- struct stu
- {
- int num;
- char name[20];
- char sex;
- float score;
- };
- struct stu boy1,boy2;
说明了两个变量boy1 和boy2 为stu 结构类型。
2、在定义结构类型的同时说明结构变量
- struct stu
- {
- int num;
- char name[20];
- char sex;
- float score;
- }boy1,boy2;
这种形式的说明的一般形式为:
struct 结构名
{
成员表列
}变量名表列;
3、直接说明结构变量
- struct
- {
- int num;
- char name[20];
- char sex;
- float score;
- }boy1,boy2;
这种形式的说明的一般形式为:
struct
{
成员表列
}变量名表列;
第三种方法与第二种方法的区别在于第三种方法中省去了结构名,而直接给出结构变量。
当然成员变量也可以是结构体类型变量:
- struct date
- {
- int month;
- int day;
- int year;
- };
- struct{
- int num;
- char name[20];
- char sex;
- struct date birthday;
- float score;
- }boy1,boy2;
转载于:https://blog.51cto.com/mco3018/476599