(C、C++)--蒋富--12.ppt-欢迎来到.ppt

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

;C 数 据 类 型;学习目标 ;学习内容 ;9.1 结构体;1、结构体类型的定义; 在结构体中数据类型相同的成员,既可逐个、逐行分别定义,也可合并成一行定义,就象一次定义多个变量一样。 ;struct Student_Info { char no[9], name[20], sex; unsigned int age, classno; float grade; }; struct Student_Info student;;struct student;;2、结构体变量的定义和引用;几点说明:;例 struct student { int num; char name[20]; char sex; int age; float score; char addr[30]; } stu1, stu2; ;3、结构体变量的赋值;3、结构体变量的赋值;strcpy (stu1.no, stu.no); strcpy (stu1.name, stu.name); stu1.sex = stu.sex; stu1.age = stu.age; stu1.classno = stu.classno; stu1.grade = stu.grade;;【例】 计算学生5门课的平均成绩,最高分和最低分。;4、简化结构体类型名 ;5、结构体数组 ; 结构体数组与二维表的对应关系; 结构体数组的初始化; 结构体数组的引用;【例】统计侯选人选票。;9.3 线性链表;线性链表中的节点可以用一个结构体类型来定义,其形式为: ;2、线性链表的基本操作;【例】 链表创建操作函数Create_LinkList。; pnew-score = score; pnew-next = NULL; tail-next = pnew; tail = pnew; } return (head); };2、线性链表的基本操作;【例】 链表插入操作函数Insert_LinkList 。;2、线性链表的基本操作;【例】链表删除操作函数Delete_LinkList 。;2、线性链表的基本操作;2、线性链表的基本操作;void Free_LinkList(NODE *head) { NODE *p, *q; p = head; while (p-next != NULL) { q = p-next; p-next = q-next; free (q); } free (head); };3、线性链表应用举例;9.4 联合体;2、联合体变量的定义和引用 ; 联合体变量的引用;3、联合体变量的赋值 ;3、联合体变量的赋值 ;几点说明: ;【例1】 共用体成员间的相互影响。;【例2】设有一个教师与学生通用的表格,教师数据有姓名、年龄、职业,教研室四项。学生有姓名、年龄、职业、班级四项。编程输入人员数据, 再以表格输出。 ;9.6 枚举类型变量的定义和引用 ;enum weekday {sun, mon, tue, wed, thu, fri, sat} today, nextday;;if (today == 6) nextday = 0;;9.7 复杂数据类型应用综合举例;【例】 输入n个学生的基本信息,然后对学生信息按成绩从高到低进行排序,并将排序后的结果输出。 ; void main ( ) { STUDENT **pstu; int i, num; printf (input the number of the students: ); //输入学生人数 scanf (%d, num); if (num = 0) //人数小于或等于零,返回 return; //动态建立结构体指针数组 pstu = (STUDENT **)malloc (num * sizeof(STUDENT *)); if (pstu == NULL) //分配失败,返回 { printf (not enough memory!\n); return; };//输入学生信息 STUDENT *GetStuInfo (int i) { STUDENT *p;

文档评论(0)

170****0532 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8015033021000003

1亿VIP精品文档

相关文档