第九章 结构体 主讲教师 :贾月乐 电话:13402866690.

Slides:



Advertisements
Similar presentations
第七节 心 悸 郑祖平. 一、概述 心悸是一种自觉心脏跳动的不适感或心 慌感。当心率加快时感到心脏跳动不适, 心率缓慢时则感到搏动有力。心悸时,心 率可快、可慢,也可有心律失常,心率和 心律正常者亦可有心悸。 一般认为与心肌收缩力心搏量的变化及 患者的精神状态注意力是否集中等多种因 素有关。
Advertisements

数据结构的引入. 通讯录管理 社团机构管理 校园导航管理 通讯录管理 社团机构管理 校园导航管理.
目 录  第 1 章 C++ 概述  第 2 章 数据类型、运算符和表达式  第 3 章 简单的输入 / 输出  第 4 章 C++ 的流程控制  第 5 章 函数  第 6 章 编译预处理  第 7 章 数组  第 8 章 结构体、共同体和枚举类型  第 9 章 指针和引用  第.
第9章 用户建立的数据类型 公共计算机基础教研部.
程序设计导论 ——第15讲 结构与结构数组.
程序设计导论 结构与结构数组.
电子成绩单项目实现.
第10章 结构体与链表 本章要点: 结构体类型与结构体变量的定义 结构体变量的引用与初始化 结构体数组 链表处理 共用体类型和枚举类型
唐山美食 ——特色小吃.
大学英语教学在学分制教学的比重 类别 文科 理科 大学英语 《课程要求》 总学时 周学时 总学分
技能竞赛促进专业建设 常州刘国钧高等职业技术学校 信息工程系 李文刚
浅谈---- 敦煌莫高窟 的保护
大学实用教程 C语言.
第四章 员工招聘与甄选.
2014創新創業教育研習營 本梯次限額50名,以報名順序額滿為止!! 課程內容及時間:
数据结构与算法 数据结构与算法实验
第八章 类和对象.
Chapter 3.0 C語言的結構與指標 資料結構導論 - C語言實作.
补充内容 结构体 概述 定义结构体类型和定义结构体变量 结构体变量的引用 结构体变量的初始化 指针与结构体 用typedef定义类型的别名.
C程序设计 第9章 自定义数据类型 主讲教师: 鲁 萍 西安建筑科技大学 理学院.
C 程式設計— 結構 台大資訊工程學系 資訊系統訓練班.
使用VC++6.0调试程序.
複習 char name1[20]; //長度為20的字串 char name2[20]; //讀取字串 gets(name1);
第10章 结构体与共用体 概述 结构体 共用体 枚举类型.
第十一章 面向对象设计 第十二章 面向对象实现
补充内容 结构体 概述 定义结构体类型和定义结构体变量 结构体变量的引用 结构体变量的初始化 指针与结构体 用typedef定义类型的别名.
编译原理与技术 类型检查 2018/11/21 《编译原理与技术》-类型检查.
第9章 结构体.
结构体和共用体 2 梁春燕 华电信息管理教研室.
第9章 自訂資料型態 – 結構 9-1 結構資料型態 9-2 結構陣列 9-3 指標與結構 9-4 動態記憶體配置 9-5 聯合資料型態
第9章 用户自己建立数据类型 9.1 定义和使用结构体变量 9.2 使用结构体数组 9.3 结构体指针 9.4 用指针处理链表
程序设计专题 第2讲 - 结构 刘新国.
STRUCTURE 授課:ANT 日期:2010/5/12.
自定义数据类型 潘荣江 山东大学计算机科学与技术学院
C++语言程序设计 C++语言程序设计 第四章 数组及自定义数据类型 C++语言程序设计.
第九章 结构体和共用体 结构体的定义 结构体的使用 共用体的定义 共用体的使用 主讲:李祥 时间:2015年10月.
C语言程序设计 李祥.
C 程式設計— 結構 台大資訊工程學系 資訊系統訓練班.
管理信息结构SMI.
辅导课程六.
第7讲 结构体与共用体 7.1 结构体 7.2 共用体.
第8章 结 构 体.
第11章 结构体和共用体.
第七章 结构体、共同体和枚举类型.
第13章 结构体的应用 13.1 了解由用户构造的数据类型 13.2 结构体类型说明及结构体变量 13.3 结构体数组
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
C语言复习3----结构体.
C语言程序设计.
第十章 用户自定义数据类型 目录 学生信息管理系统的开发 结构体数据类型的概述 结构体变量的使用 结构体数组
OOP6 結構Struct 黃兆武.
目录 9.1 结构体类型 9.2 共用体类型 9.3 枚举类型 9.4 类型声明符typedef 1.
第十章 结构体与链表 西安工程大学.
第9章 用户自己建立数据类型 C语言提供了一些系统已定义好的数据类型,如int,float,char,用户可以用它们定义变量。
浙江长征职业技术学院—计算机与信息技术系—相方莉制作
第九章 用户建立的数据类型.
C++复习2----类与对象.
本节内容 结构体 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
本节内容 指针类型.
结构体与共用体 结构体 结构体是一种构造数据类型 用途:把不同类型的数据组合成一个整体 自定义数据类型 结构体类型定义
本节内容 结构体.
國民小學資優資源班 專 題 研 究 課 程 獅 子 王 國 的 大 探 險.
C语言程序设计 第9章 结构体.
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
第14讲 结构体和共用体 计算机与通信工程学院.
第八章 结构体和共用体 结构体类型和结构体变量 结构体数组 结构体指针变量 共用体.
Chap 9 结构 9.1 构建学生信息库 9.2 计算学生平均成绩 9.3 学生成绩排序 9.4 修改学生成绩.
本节内容 指针类型 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
安排座位.
Presentation transcript:

第九章 结构体 主讲教师 :贾月乐 电话:13402866690

SWPU C语言程序设计 第九章 结构体 结构体及结构体变量的定义 9.1 结构体变量的初始化 9.2 结构体变量的引用 9.3

思考一个问题 问题: num name num name sex score sex score 存储一个班级中 5 名学员的信息(学号、姓名、性别和成绩) 解决方案: I. 使用数组 II. 使用多维数组 不能建立数组间的关系 01 02 03 04 05 num III. 使用结构 C 语言不允许一个数组包含多种数据类型 Mary John Peter Rose Kate F M 01 02 03 04 05 89 78.5 67 97.5 64 Mary John Peter Rose Kate C 语言引入了称为结构的数据存储方式 name num name sex score F M sex score 89 78.5 67 97.5 64 “结构” 是一种构造数据类型,它是由若干数据项组合而成的复杂数据对象,这些数据项称为结构的成员。

9.1 结构体及结构体变量的定义 9.1.1 结构体类型定义格式 struct 结构体名 { 结构成员1; 结构成员2; ┆ 结构成员n; SWPU C语言程序设计 9.1 结构体及结构体变量的定义 9.1.1 结构体类型定义格式 说明结构类型 的关键字 域: 结构体类型定义中的每个成员; 成员名的命名规则和变量相同; 同一结构体的同层成员不能同名。 struct 结构体名 { 结构成员1; 结构成员2; ┆ 结构成员n; }; 注意分号

9.1 结构体及结构体变量的定义 例:定义结构体类型student struct student { int num; SWPU C语言程序设计 9.1 结构体及结构体变量的定义 例:定义结构体类型student struct student { int num; char name[50]; char gender; int age; float score; char addr[50]; }; num name gender age score addr 001 小李 M 20 88.5 1栋 该结构体类型的具体实例 结构体类型变量 struct student应作为一个 整体对待,“;”号不能少!

9.1 结构体及结构体变量的定义 结构体变量的定义格式: struct 结构体名 结构体变量名表 先定义结构体类型再定义变量名形式: SWPU C语言程序设计 9.1 结构体及结构体变量的定义 结构体变量的定义格式: struct 结构体名 结构体变量名表 先定义结构体类型再定义变量名形式: struct student { int num; char name[50]; char gender; int age; float score; char addr[50]; }; 定义结构体变量的三种形式 标准定义格式定义结构体变量 定义结构体类型的同时定义变量 直接定义结构体类型的变量 struct student stu1,stu2;

9.1 结构体及结构体变量的定义 在定义结构体类型的同时定义变量 一般形式为: struct 结构体名 { 成员表列 }变量名表列; SWPU C语言程序设计 9.1 结构体及结构体变量的定义 在定义结构体类型的同时定义变量 struct student { int num; char name[50]; char gender; int age; float score; char addr[50]; }student1,student2; 一般形式为: struct 结构体名 { 成员表列 }变量名表列;

9.1 结构体及结构体变量的定义 直接定义结构体类型的变量 一般形式为: struct { 成员表列 }变量名表列; struct SWPU C语言程序设计 9.1 结构体及结构体变量的定义 直接定义结构体类型的变量 struct { int num; char name[50]; char gender; int age; float score; char addr[50]; }student1,student2; 一般形式为: struct { 成员表列 }变量名表列; * 不出现结构体名

9.1 结构体及结构体变量的定义 结构体类型的嵌套定义 struct date { int month; int day; SWPU C语言程序设计 9.1 结构体及结构体变量的定义 结构体类型的嵌套定义 定义:结构体成员又是一个结构体变量 struct date { int month; int day; int year; } ; struct student { char name[50]; char gender; int age; struct date birthday; }stu1,stu2; name gender birthday month day year

9.2 结构体变量的初始化 2、结构体变量的初始化 一般格式: struct 结构体名 变量名={ }; struct student SWPU C语言程序设计 9.2 结构体变量的初始化 2、结构体变量的初始化 一般格式: struct 结构体名 变量名={ }; struct student { int num; char name[20]; char gender; int age; }std2; struct student std1={ 1, “wangming”, ‘F’, 20}; std2=std1; struct student std1; std1={ 1, “wangming”, ‘F’, 20,}

9.1.3 结构体成员的引用 3、结构体成员的引用 一般格式: 结构体名.成员名; struct student { int num; SWPU C语言程序设计 9.1.3 结构体成员的引用 3、结构体成员的引用 一般格式: 结构体名.成员名; struct student { int num; char name[20]; char gender; int age; }std2; struct student std1={ 1, “wangming”, ‘F’, 20}; std2=std1; 引用变量std1的num std1.num 引用变量std2的 name成员 std2.name

9.1.3 结构体成员的引用 3、结构体成员的引用 若某成员又是一个结构体类型,即结构体,则逐级引用 struct date SWPU C语言程序设计 9.1.3 结构体成员的引用 3、结构体成员的引用 若某成员又是一个结构体类型,即结构体,则逐级引用 struct date { int month; int day; int year; }; struct student { char name[20]; struct date birthday; }std1; 引用std1的出生年 std1.birthday.year 引用std1的出生月 std1.birthday.month

9.1.2 结构体变量的定义及初始化 4、结构体变量的动态初始化或输出 struct student { int num; SWPU C语言程序设计 9.1.2 结构体变量的定义及初始化 4、结构体变量的动态初始化或输出 struct student { int num; char name[20]; char gender; int age; float score; }std1; scanf(“%d”,&std1.num); scanf(“%s”,std1.name); scanf(“ %c”,&std1.gender); scanf(“%d”,&std1.age); scanf(“%f”,&std1.score); printf(“%d, %s, %c, %d, %f\n”, std1.num, std1.name, std1.gender, std1.age, std1.score);

9.1.4结构指针变量 一个指针当用来指向一个结构时, 称之为结构指针变量。 结构指针变量中的值是所指向的结构变量的首地址。 结构指针变量声明的一般形式为: struct 结构名 *结构指针变量名 通过结构指针可以访问该结构变量的成员,一般形式为: (*结构指针变量).成员名 或者 结构指针变量->成员名 struct stu *pstu; (*pstu).num 或者: pstu->num

9.1.3结构数组 元素为结构类型的数组称为结构数组。 在实际应用中,经常用结构数组来表示具有相同数据结构的一个群体。例如一个班的学员档案,一个公司的职工档案等。 struct student { int num; char* name; char sex; float score; }stu[30]; 定义了一个结构数组stu,共有30个元素,stu[0]~stu[29]。每个数组元素都具有struct student的结构形式。

SWPU C语言程序设计 9.1.5 typedef typedef:C语言的关键字,作用是为一种数据类型定义一个新名字。这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型(struct等)。 struct student { int num; char name[50]; char gender; int age; float score; char addr[50]; }; struct student st1; typedef struct student { int num; char name[50]; char gender; int age; float score; char addr[50]; }mytype; mytype st1;

9.1.5 区分typedef与define typedef char* pStr1; #define pStr2 char * SWPU C语言程序设计 9.1.5 区分typedef与define typedef char* pStr1; #define pStr2 char * pStr1 s1, s2; pStr2 s3, s4;

练 习 课堂练习 一个学生包含如下信息: 设计一个程序:提示用户输入该学生的 对应信息,然后输出这些信息 num name class SWPU C语言程序设计 练 习 课堂练习 一个学生包含如下信息: num name class score computer math english 设计一个程序:提示用户输入该学生的 对应信息,然后输出这些信息

Thank You ! www.themegallery.com