节 用户自己建立数据类型PPT学习教案_第1页
节 用户自己建立数据类型PPT学习教案_第2页
节 用户自己建立数据类型PPT学习教案_第3页
节 用户自己建立数据类型PPT学习教案_第4页
节 用户自己建立数据类型PPT学习教案_第5页
已阅读5页,还剩145页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、会计学1 节节 用户自己建立数据类型用户自己建立数据类型 第1页/共150页 第2页/共150页 u 由程序设计者指定了由程序设计者指定了 一个结构体类型一个结构体类型 struct Student u 它包括它包括 num,name,sex,age, score,addr等不同类等不同类 型的成员型的成员 第3页/共150页 类型名类型名 成员名成员名; 第4页/共150页 第5页/共150页 ; 第6页/共150页 numnamesexage birthday addr monthdayyear 第7页/共150页 第8页/共150页 结构体类型名结构体类型名结构体变量名结构体变量名 第9

2、页/共150页 10001Zhang XinM 1990.5Shanghai student1 10002Wang LiF2098Beijing student2 第10页/共150页 第11页/共150页 第12页/共150页 第13页/共150页 第14页/共150页 第15页/共150页 第16页/共150页 第17页/共150页 a.num=10010; 对对 printf(“%sn”,a); 不对不对 第18页/共150页 b=a; 对对 struct Student b; b.num+; 对对 第19页/共150页 scanf(%ld, 对对 printf(%o, 对对 scanf

3、(“%ld,%s,%c,%sn”, 错错 第20页/共150页 a.birthday.month=12; 对对 a.age=10; b.age=9; 对对 sum=a.age+b.age; 对对 第21页/共150页 息。如果二者相等,输出2个学生 的全部信息 第22页/共150页 不能加不能加 第29页/共150页 第30页/共150页 第31页/共150页 第32页/共150页 第33页/共150页 常变量常变量 若人数变为若人数变为30 30 第34页/共150页 #define N 5 注意注意temp的类型的类型 第35页/共150页 写法上与普通变量一致写法上与普通变量一致 第36

4、页/共150页 第37页/共150页 第38页/共150页 第39页/共150页 第40页/共150页 stu_1 10101 Li Lin M 89.5 p 第41页/共150页 stu_1 10101 Li Lin M 89.5 p (*p).num (*p).name (*p).sex (*p).score 第42页/共150页 第43页/共150页 第44页/共150页 关信息 第45页/共150页 第46页/共150页 10101Li LinM18 10102Zhang FangM19 10104Wang MinF20 stu0 stu1 stu2 第47页/共150页 10101L

5、i LinM18 10102Zhang FangM19 10104Wang MinF20 p stu0 stu1 stu2 第48页/共150页 10101Li LinM18 10102Zhang FangM19 10104Wang MinF20 p stu0 stu1 stu2 第49页/共150页 10101Li LinM18 10102Zhang FangM19 10104Wang MinF20 p stu0 stu1 stu2 第50页/共150页 第51页/共150页 第52页/共150页 第53页/共150页 第54页/共150页 第55页/共150页 最后得到结果。 n本程序假设

6、n=3 第56页/共150页 4个成员个成员 输入前输入前3个成员值个成员值 计算最后成员值计算最后成员值 第57页/共150页 第58页/共150页 输入第输入第1个成员值个成员值输入第输入第2个成员值个成员值 输入第输入第3个成员值个成员值 计算第计算第4个成员值个成员值 stu0 stu1 stu2 stu 10101Li78 89 9888.33 i=0 第59页/共150页 输入第输入第1个成员值个成员值输入第输入第2个成员值个成员值 输入第输入第3个成员值个成员值 计算第计算第4个成员值个成员值 stu0 stu1 stu2 stu 10101Li78 89 9888.33 101

7、03Wang98.5 87 6984.83 i=1 第60页/共150页 输入第输入第1个成员值个成员值输入第输入第2个成员值个成员值 输入第输入第3个成员值个成员值 计算第计算第4个成员值个成员值 stu0 stu1 stu2 stu 10101Li78 89 9888.33 10103Wang98.5 87 6984.83 10106Sun 88 76.5 8984.5 i=2 第61页/共150页 stu0 stu1 stu2 stu 10101Li78 89 9888.33 10103Wang98.5 87 6984.83 10106Sun 88 76.5 8984.5 最大最大 返回

8、返回 第62页/共150页 stud 10101Li78 89 9888.33 10103Wang98.5 87 6984.83 10106Sun 88 76.5 8984.5 numnam e scor e aver stu0 stu1 stu2 第63页/共150页 函数无返回值。 第64页/共150页 第65页/共150页 head1249 1249 A 1356 1356 1475 B 1475 C 1021 1021 D 0 头指针头指针 各结点地址不连续各结点地址不连续 各结点含有两个部分各结点含有两个部分 表尾表尾 第66页/共150页 第67页/共150页 10101 89.5

9、 10103 90 10107 85 a结点结点b结点结点c结点结点 a.next=b.next= num score next 第68页/共150页 10101 89.5 10103 90 10107 85 a结点结点b结点结点c结点结点 num score next 第69页/共150页 10101 89.5 10103 90 10107 85 a结点结点b结点结点c结点结点 num score next head head=a.next= b.next= NULL c.next=NULL; 第70页/共150页 第71页/共150页 第72页/共150页 10101 89.5 10103

10、 90 10107 85 a结点结点b结点结点c结点结点 num score next head NULL p 相当于相当于p= 第73页/共150页 10101 89.5 10103 90 10107 85 a结点结点b结点结点c结点结点 num score next head NULL p 相当于相当于p= 第74页/共150页 10101 89.5 10103 90 10107 85 a结点结点b结点结点c结点结点 num score next head NULL p 相当于相当于p= 第75页/共150页 10101 89.5 10103 90 10107 85 a结点结点b结点结点c

11、结点结点 num score next head NULL p 相当于相当于p= 第76页/共150页 10101 89.5 10103 90 10107 85 a结点结点b结点结点c结点结点 num score next head NULL p 相当于相当于p=NULL; 静态链表静态链表 第77页/共150页 第78页/共150页 第79页/共150页 struct Student *head,*p1,*p2; 第80页/共150页 p1 p1=p2=(struct Student*)malloc(LEN); p2 第81页/共150页 p1 scanf(%ld,%f, p2 10101

12、89.5 第82页/共150页 head p1 p2 scanf(%ld,%f, 10101 89.5 第83页/共150页 head p1 p2 10101 89.5 第84页/共150页 head p1 p2 10101 89.5 p1=(struct Student*)malloc(LEN); scanf(%ld,%f, 10103 90 第85页/共150页 head p1 p2 10101 89.5 p2-next=p1; 10103 90 第86页/共150页 head p1 p2 10101 89.5 p2-next=p1; 10103 90 p2=p1; 第87页/共150页

13、head p1 p2 10101 89.5 10103 90 第88页/共150页 head p1 p2 10101 89.5 10103 90 p1=(struct Student*)malloc(LEN); scanf(%ld,%f, 10107 85 第89页/共150页 head p1 p2 10101 89.5 10103 90 10107 85 p2-next=p1; 第90页/共150页 head p1 p2 10101 89.5 10103 90 10107 85 p2-next=p1; p2=p1; 第91页/共150页 head p1 p2 10101 89.5 10103

14、 90 10107 85 0 第92页/共150页 head p1 p2 10101 89.5 10103 90 10107 85 0 p1=(struct Student*)malloc(LEN); scanf(%ld,%f, 第93页/共150页 head p1 p2 10101 89.5 10103 90 10107 85 0 NULL p2-next=NULL; 第94页/共150页 struct Student类型数据的长度类型数据的长度 第95页/共150页 p1总是总是开辟开辟新新结点结点 p2总是总是指向最后结点指向最后结点 用用p2和和p1连接连接两个两个结点结点 第96页/

15、共150页 第97页/共150页 1001 67.5 1003 87 1005 99 NULL p 第98页/共150页 p 1001 67.5 1003 87 1005 99 NULL printf(%ld %5.1fn,p-num,p-score); 第99页/共150页 1001 67.5 1003 87 1005 99 NULL p=p-next; 解题思路:解题思路: u输出输出p所指的结点所指的结点 u使使p后移一个结点后移一个结点 printf(%ld %5.1fn,p-num,p-score); p 第100页/共150页 1001 67.5 1003 87 1005 99 N

16、ULL 解题思路:解题思路: u输出输出p所指的所指的新新结点结点 u使使p后移一个结点后移一个结点 printf(%ld %5.1fn,p-num,p-score); p 第101页/共150页 1001 67.5 1003 87 1005 99 NULL p=p-next; 解题思路:解题思路: u输出输出p所指的所指的新新结点结点 u使使p后移一个结点后移一个结点 printf(%ld %5.1fn,p-num,p-score); p 第102页/共150页 1001 67.5 1003 87 1005 99 NULL p=p-next; 解题思路:解题思路: u输出输出p所指的所指的新

17、新结点结点 u使使p后移一个结点后移一个结点 printf(%ld %5.1fn,p-num,p-score); p 相当于相当于p=NULL; 第103页/共150页 第104页/共150页 第105页/共150页 1000100110021003 字符字符ch整整 型型 变变 量量 i实实 型型 变变 量量 f 第106页/共150页 union Data int i; char ch; float f; ; union Data a,b,c; 第107页/共150页 第108页/共150页 第109页/共150页 第110页/共150页 第111页/共150页 第112页/共150页 第113页/共150页 第114页/共150页 第115页/共150页 第116页/共150页 第117页/共150页 第118页/共150页 第119页/共150页 外部的结构体数组外部的结构体数组 共用体变量共用体变量 第120页/共150页 声明共用体类型声明共用体类型 定义共用体类型变量定义共用体类型变量 第121页/共150页 第122页/共150页 第123页/共150页 第124页/共150页 枚举枚举元素元素 枚举枚举变量变量 第125页/共150页 第126页/

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论