网站大量收购闲置独家精品文档,联系QQ:2885784924

c程序女设计课件第07章.ppt

  1. 1、本文档共68页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c程序女设计课件第07章

第7章 结构体 结构体由许多组织在一起的数据项组成,这些数据项不需要属于同一类型 结构体可以容纳需要的任意多数据项 结构体中的变量称为结构体元素或结构体成员 声明结构体变量 一旦定义了结构体,就可以声明一个或多个该类型的变量 示例:struct student h1; 这条语句将会预留足够的内存来存放该结构体中的所有项 初始化结构体 student 类型的变量 h1 和 h2 可以按照下面的方式进行声明和初始化: 结构体中使用的赋值语句 可以使用一条简单的赋值语句将一个结构体变量的值赋给另一个相同类型的结构体变量 例如,如果 h1 和 h2 是同一类型的结构体变量,那么下列语句是有效的: h2 = h1; 访问结构体元素 结构体元素通过使用点运算符(.)来引用,这个运算符也称为成员运算符 语法: 结构体变量名.元素名 示例: cin h1. name; #include iostream.h void main() { struct student { char name[10]; int chinese; int english; }score; cout姓名:; cinscore.name; cout语文成绩:; cinscore.chinese; cout英语成绩:; cinscore.english; //为结构体元素赋值 cout姓名: score.nameendl; cout语文: score.chineseendl; cout英语: score.englishendl; }//输出结构体元素 结构体数组 首先定义结构体,然后声明该类型的数据变量 示例: struct student stu[5]; 访问数组 stu的第三个元素中的变量 number : stu[2].number 结构体数组的初始化 结构体数组是通过用一对大括号将其元素值列表括起来进行初始化的 示例: 结构体指针 结构体指针是通过在结构体变量名前放置一个星号(*)来进行声明的 - 运算符用于通过指针来访问结构体的元素 示例: struct student *p, h1; p = h1; coutp-name; 指向结构数组 结构指针作函数参数 动态存储分配函数 链表的使用 单链表的常用操作:结点的插入、删除、检索和排序等。 ①建立链表 图7-1 图7-2 图7-3(a) 图7-3(b) 图7-3(c) 图7-4(a) 图7-4(b) 图7-4(c) 图7-5 ②链表的输出 图7-6 ③链表的删除操作 ③链表的删除操作 ③链表的删除操作 图7-7 图7-8(a) 图7-8(b) 图7-8(c) ④链表的插入操作 图7-9(a) 图7-9(b) 图7-9(c) 图7-9(d) 栈 栈是一种线性表,对栈的所有操作发生在这个表的同一端,该端称为栈的“顶”,另一端称为栈的“底”。 由于插入和删除都在栈顶进行,因此删除的将是必威体育精装版插入的成员,所以栈又被称为“后进先出表(LIFO表或下推表)”。 描述一个栈通常需要一个变量和三个函数:变量用于记录当前的栈顶位置;函数包括将数据项压入栈的push()、从栈顶弹出一个成员的pop()、读栈顶成员的top()。有时还需要引入一个变量标识栈内数据对象数目或者栈底的位置。 联合体 联合体类型的声明 枚举类型 【例】编写程序使用联合体类型数据来保存数据。 #include iostream.h void main() { union t { char *name; int age; int income; }; union t list; coutsizeof(union t*)endl; /*输出联合体类型长度*/ list.name=Zhang hai; /*第一次赋值*/ coutlist.nameendl; list.age=20; /*第二次赋值*/ coutlist.ageendl; list.income=2500; /*第三次赋值*/ coutlist.incomeendl; coutlist.namelist.agelist.incomeendl;     /*输出各成员值*/ }  枚举类型声明的一般形式为: enum 枚举类型名 { 枚举值表 }; 例如: enum weekday { sun,mon,tue,wed,thu,fri,sat }; (1)先声明后定义 enum weekday { ...... }; enum weekday a,b,c; (2)声明的同时定义

文档评论(0)

150****4233 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档