北大青鸟 C语言PPT12.pptVIP

  • 0
  • 0
  • 约8.45千字
  • 约 25页
  • 2018-06-01 发布于浙江
  • 举报
北大青鸟 C语言PPT12

第十二章 结构 回顾 字符串与字符数组的区别是字符串的末尾有一个空字符\0以标识字符串结束。 用scanf()语句读入字符串时不允许输入中存在空格。 gets() 和 puts() 函数分别用于字符串的输入和输出。 在 string.h 中定义了很多字符串处理函数函数,比较常用的有:strcpy()、strcat()、strcmp() 和 strlen() 。 假如程序里需要一组字符串,一种常用的做法就是用一个字符指针数组表示它们。 字符串可以作为参数,函数传递机制同数组作为参数,为传址方式。 目标 理解为什么使用结构 定义结构 声明结构变量 访问结构成员 掌握结构作为函数参数的用法 结构简介 定义结构2-1 定义结构2-2 声明结构变量 嵌套结构 结构变量初始化 结构变量赋值 使用结构示例 结构指针变量 结构数组 结构指针变量 结构作为函数参数 结构成员作为函数参数 整个结构作为参数 结构指针做为参数 实现堆栈 5-1 实现堆栈 5-2 使用堆栈实现行编辑功能 实现堆栈 5-3 由此可见,需要实现堆栈的以下几个操作: 入栈 出栈 清空栈 显示从栈底到栈顶所有的元素 判断栈是否为空 实现堆栈 5-4 实现堆栈 5-5 总结2-1 结构是由若干数据项组合而成的复杂数据对象,这些数据项称为结构的成员。 定义一个结构,需要给出各个成员的类型及名称。 结构定义仅描述了一个结构的形式。要在程序里使用结构,需要声明结构变量。 访问结构成员的操作要用圆点运算符(.),一般形式为:结构变量名.成员名。 总结2-2 可以通过指向结构的指针访问结构成员,常用形式为:结构指针变量-成员名。 数组元素的类型为结构的数组称为结构数组。 结构作为函数参数有三种不同的方式:结构成员的值传递给函数参数、整个结构作为参数传递、结构指针变量做函数的参数。 ACCP V4.0 ACCP V4.0 存储一个班级中 5 名学员的信息(学号、姓名、性别和成绩) 问题: I. 使用数组 Mary John Peter Rose Kate F M F M F 01 02 03 04 05 89 78.5 67 97.5 64 解决方案: score num sex name 不能建立数组间的关系 II. 使用多维数组 Mary John Peter Rose Kate F M F M F 01 02 03 04 05 89 78.5 67 97.5 64 C 语言不允许一个数组包含多种数据类型 III. 使用结构 num name sex score C 语言引入了称为结构的数据存储方式 “结构” 是一种构造数据类型,它是由若干数据项组合而成的复杂数据对象,这些数据项称为结构的成员。 struct structurename { datatype variable1; datatype variable2; ... }; 结构成员 { }; 结构名 struct student int num; char name[20]; char sex; 定义结构 float score; C 语言中的有效数据类型 struct student { int num; char name[20]; char sex; float score; }; num name sex student 结构定义并不预留内存 结构定义放置在程序的开始部分,位于头文件声明之后 score 结构定义仅描述了一个结构的形式。如果要在程序里使用结构,需要声明结构变量。 声明结构变量 struct student { int num; char name[20]; char sex; float score; }; struct student student1,student2; I.先定义结构,再声明结构变量 struct student { int num; char name[20]; char sex; float score; }student1,student2; II.在定义结构类型的同时声明结构变量 struct { int num; char name[20]; char sex; float score; }student1,student2; III. 直接声明结构变量 声明一个类型为 student 结构的变量,将会为该变量分配内存,大小是大于或等于其所有成员变量的大小之和。 struct date {

文档评论(0)

1亿VIP精品文档

相关文档