第九章 结构体.pptVIP

  • 11
  • 0
  • 约4.84千字
  • 约 23页
  • 2016-11-27 发布于河南
  • 举报
第九章 结构体

C语言程序设计 主讲:丁士杰 邮箱:bluesar@ 宿州学院经济管理学院电子商务教研室 授课讲义 主讲人:丁士杰 * 思考一个问题 在程序里表示一个人(姓名、年龄、性别…),怎么表示? 想表示多个人呢? 如何用计算机程序实现下述表格的管理? 表9-1 某学校学生成绩管理表 学号 姓名 性别 入学时间 计算机原理 英 语 数 学 音 乐 1 令狐冲 男 1999 90 83 72 82 2 林平之 男 1999 78 92 88 78 3 岳灵珊 女 1999 89 72 98 66 4 任莹莹 女 1999 78 95 87 90 5 … … 6 … … 第九章 结构体 * int studentId[30]; /* 最多可以管理30个学生, 每个学生的学号用数组的下标表示*/ char studentName[30][10]; char studentSex[30][2]; int timeOfEnter[30]; /*入学时间用int表示*/ int scoreComputer[30];/*计算机原理课的成绩*/ int scoreEnglish[30]; /*英语课的成绩*/ int scoreMath[30]; /*数学课的成绩*/ int scoreMusic[30]; /*音乐课的成绩*/ 数组的解决方法 第九章 结构体 * int studentId[30] = {1,2,3,4,5,6}; char studentName[30][10]={{令狐冲},{林平之}, {岳灵珊},{任莹莹}}; char studentgender[30][2]={{男},{男},{女},{女}}; int timeOfEnter[30] = {1999,1999,1999,1999}; int scoreComputer[30] = {90,78,89,78}; int scoreEnglish[30] = {83,92,72,95}; int scoreMath[30] = {72,88,98,87}; int scoreMusic[30] = {82,78,66,90}; 数组的解决方法 第九章 结构体 * 数据的内存管理方式 90 78 89 78 …… 83 92 72 95 …… 72 88 98 87 …… 82 78 66 90 …… 1 2 3 4 …… 令狐冲 林平之 岳灵珊 任莹莹 …… 男 男 女 女 …… 1999 1999 1999 1999 …… 数组的解决方法 第九章 结构体 * 数据的内存管理方式 90 78 89 78 …… 83 92 72 95 …… 72 88 98 87 …… 82 78 66 90 …… 1 2 3 4 …… 令狐冲 林平之 岳灵珊 任莹莹 …… 男 男 女 女 …… 1999 1999 1999 1999 …… 分配内存不集中,寻址效率不高 对数组进行赋初值时,容易发生错位 结构显得比较零散,不容易管理 数组的解决方法 第九章 结构体 * 希望的内存分配图 1 令狐冲 男 1999 90 83 72 82 2 林平之 男 1999 78 92 88 78 3 岳灵珊 女 1999 89 72 98 66 4 任莹莹 女 1999 78 95 87 90 第九章 结构体 * 结构体的解决方法 struct STUDENT { int studentID; /*每个学生的序号*/ char studentName[10];/*每个学生的姓名*/ char studentGender[4]; /*每个学生的性别*/ int timeOfEnter; /*每个学生的入学时间*/ int scoreComputer; /*每个学生的计算机原理成绩*/ int scoreEnglish; /*每个学生的英语成绩*/ int scoreMath; /*每个学生的数学成绩*/ int scoreMusic; /*每个学生的音乐成绩*/ }; struct STUDENT是一个类型 struct STUDENT students[4];//定义一个结构体数组 students[0].studentID students[0].scoreComputer 它们都是变量,一般称为结构的成员变量 第九章 结构体 * 用户自定义的数据类型 结构体: 把关系紧密、且逻辑相关的多种不同类型的变量,组织到统一的名字

文档评论(0)

1亿VIP精品文档

相关文档