77范文网 - 专业文章范例文档资料分享平台

C程序设计第9章 用户自己建立数据类型

来源:网络收集 时间:2021-09-24 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

第四版

第9章 用户自己建立数据类型9.1 定义和使用结构体变量 9.2 使用结构体数组 9.3 结构体指针 9.4 用指针处理链表 9.5 共用体类型 9.6 使用枚举类型 9.7 用typedef声明新类型名 声明新类型名

第四版

9.1 定义和使用结构体变量9.1.1 自己建立结构体类型 9.1.2 定义结构体类型变量 9.1.3 结构体变量的初始化和引用

第四版

9.1.1 自己建立结构体类型用户自己建立由不同类型数据组成的组合型的数据结 构,它称为结构体。 它称为结构体。 结构体 例如,一个学生的学号、姓名、性别、年龄、成绩、 例如,一个学生的学号、姓名、性别、年龄、成绩、 家庭地址等项,是属于同一个学生的,因此组成一个 家庭地址等项,是属于同一个学生的,因此组成一个 组合数据, 的变量, 组合数据,如student_1的变量,反映它们之间的内 的变量 在联系。 在联系。

第四版

9.1.1 自己建立结构体类型struct Student { int num; char name[20]; char sex; int age; float score; char addr[30]; }; 由程序设计者指定了一个结 构体类型struct Student。 构体类型 。 它包括 num,name,sex,age,score,ad dr等不同类型的成员。 等不同类型的成员。 等不同类型的成员

第四版

9.1.1 自己建立结构体类型声明一个结构体类型的一般形式为: 声明一个结构体类型的一般形式为: 一个结构体类型的一般形式为 struct 结构体名 { 成员表列 }; 成员名; 类型名 成员名

第四版

9.1.1 自己建立结构体类型说明: 说明: (1) 可以根据需要设计出多种结构体类型,例如 可以根据需要设计出多种结构体类型, 根据需要设计出多种结构体类型 struct Teacher struct Worker struct Date等结构体类型 等结构体类型 各自包含不同的成员

第四版

9.1.1 自己建立结构体类型说明: 说明: (2)结构体成员可以属于另一个结构体类型。 结构体成员可以属于另一个结构体类型。 结构体成员可以属于另一个结构体类型 struct Date { int month; int day; int year; };

struct Stu { int num;char name[20]; char sex;int age; struct Date birthday; char addr[30]; }; num name sex age birthday month day year addr

第四版

9.1.2 定义结构体类型变量1. 先声明结构体类型,再定义该类型变量 先声明结构体类型, struct Student { int num; char name[20]; char sex; int age; float score; char addr[30]; }; struct Student student1,student2; 结构体类型名 结构体变量名

第四版

9.1.2 定义结构体类型变量2.在声明类型的同时定义变量 在声明类型的同时定义变量 struct Student { int num; char name[20]; char sex; int age; float score; char addr[30]; } student1,student2;

第四版

9.1.2 定义结构体类型变量3. 不指定类型名而直接定义结构体类型变量 struct { int num; char name[20]; char sex; int age; float score; char addr[30]; } student1,student2;

第四版

9.1.2 定义结构体类型变量(

1) 结构体类型与结构体变量是不同的概念,不要混同。只能对变 结构体类型与结构体变量是不同的概念,不要混同。 量赋值、存取或运算,而不能对一个类型赋值、存取或运算。 量赋值、存取或运算,而不能对一个类型赋值、存取或运算。在编译 时,对类型是不分配空间的,只对变量分配空间。 对类型是不分配空间的,只对变量分配空间。 (2) 结构体类型中的成员名可以与程序中的变量名相同,但二者不 结构体类型中的成员名可以与程序中的变量名相同, 代表同一对象。 代表同一对象。 (3) 结构体变量中的成员可以单独使用,它的作用与地位相当于普 结构体变量中的成员可以单独使用, 通变量。 通变量。

第四版

9.1.3 结构体变量的初始化和引用把一个学生的信息(包括学号 姓名、性别、住址)放在一个结构 包括学号、 例9.1 把一个学生的信息 包括学号、姓名、性别、住址 放在一个结构 体变量中,然后输出这个学生的信息。 体变量中,然后输出这个学生的信息。 #include <stdio.h> int main() { struct student { long int num; char name[20]; char sex; char addr[20]; }a={10101,"Li Lin",'M',"123 Beijing Road"}; printf("NO.:%ld\nname:%s\nsex:%c\naddress:%s\n", a.num,,a.sex,a.addr); return 0; }

第四版

#include <stdio.h> int main() { struct Student { long int num; char sex; char name[20]; char addr[20];

}a={10101,“Li Lin”,‘M’, “123 Beijing Road”}; a.num=10010; 对

printf(“%s\n”,a); 不对 …… }

第四版

#include <stdio.h> int main() { struct Student { long int num; char sex; struct Student b; b=a; …… } 对 对 b.num++; char name[20]; char addr[20];

}a={10101,“Li Lin”,‘M’, “123 Beijing Road”};

第四版

#include <stdio.h> int main() { struct Student { long int num; char sex; char name[20]; char addr[20]; 对

}a={10101,“Li Lin”,‘M’, “123 Beijing Road”}; scanf(″%ld″,&a.num); printf(″%o″,&a); …… } 对

scanf(“%ld,%s,%c,%s\n”,&a); 错

第四版

#include <stdio.h> int main() { struct Date { int month; int day; int year; }; struct Stu { int num;char name[20]; char sex;int age; struct Date birthday; char addr[30]; }a,b; a.birthday.month=12; 对 a.age=10; b.age=9; 对 sum=a.age+b.age; 对 …… }

第四版

输入两个学生的学号、姓名和成绩,输出成绩较高学生的学号、姓名和成绩。 例9.2 输入两个学生的学号、姓名和成绩,输出成绩较高学生的学号、姓名和成绩。 #include <stdio.h> int main() { struct stu { int num; char name[20]; float score; }stu1,stu2; scanf("%d%s%f",&stu1.num,,&stu1.score); scanf("%d%s%f",&stu2.num,,&stu2.score); printf("The higher score is:\n"); if (stu1.score>stu2.score) printf("%d %s %6.2f\n",stu1.num,, stu1.score); else if (stu1.score<stu2.score) printf("%d %s %6.2f\n",stu2.num,, stu2.score); else { printf("%d %s %6.2f\n",stu1.num,stu1.nam

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说英语学习C程序设计第9章 用户自己建立数据类型在线全文阅读。

C程序设计第9章 用户自己建立数据类型.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/yingyu/1246220.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: