C语言PPT结构体与共用体_第1页
C语言PPT结构体与共用体_第2页
C语言PPT结构体与共用体_第3页
C语言PPT结构体与共用体_第4页
C语言PPT结构体与共用体_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1、枚举类型枚举类型共用体共用体结构体结构体自定义类型名自定义类型名11.1 结构体结构体 一、结构体一、结构体类型类型的定义的定义 struct 结构体名结构体名 成员表列成员表列;struct student int num; char sex; char name20; float score; ; 二、结构体类型二、结构体类型变量变量的的 定义、引用和初始化定义、引用和初始化 struct student st1,st2;st1.num=16;st1.sex=M;strcpy(,LiMing);st1.score=82.5;scanf(%d,&st2.num);st

2、2.sex=getchar( );gets();scanf(%f,&st2.score);printf(%d,%c,%s,%f n,st1.num, st1.sex,,st1.score); struct studentint num; char sex, name20; float score; st1,st2; struct int num; char sex, name20; float score; st1,st2; 二、结构体类型变量的定义、引用和初始化二、结构体类型变量的定义、引用和初始化struct dateint month; int d

3、ay; int year;struct studentchar name20; struct date birthday; char addr30; student1, student2; 二、结构体类型变量的定义、引用和初始化二、结构体类型变量的定义、引用和初始化 例例1 struct student int num; char sex, name20; float score; st1=16,M, LiMing,82.5; main( ) printf(%d,%c,%s,%f n, st1.num,st1.sex,,st1.score); 二、结构体类型变量的定义、引用和初

4、始化二、结构体类型变量的定义、引用和初始化三、结构体数组三、结构体数组例例2 对候选人得票的统计程序。设有对候选人得票的统计程序。设有3个候选人,个候选人,10个个 投票人投票人, 每次输入一个得票的候选人的姓名,最后每次输入一个得票的候选人的姓名,最后 输出各候选人得票数。输出各候选人得票数。name countstruct student int num; char sex, name20; float score; stu130; #include string.hstruct perchar name20; int count; a3=li,0,zhang,0,feng,0;main(

5、 )int i,j; char name20; for(i=1;i=10;i+) gets(name); for(j=0;j3;j+) if(strcmp(name,)=0)aj.count+; for(j=0;jname,LiMing); p- -score=82.5; printf(%d,%c,%s,%f n,p- -num,p- -sex,p- -name, p- -score); 2. 指向结构体数组的指针指向结构体数组的指针struct student int num; char name20; char sex; int age; ;struct student st

6、u3=10101,li lin,M,18, 10102,zhangfan,M,19, 10105,wangming,F,20;main( )struct student *p; for(p=stu;pnum,p- -name,p- -sex,p- -age); 例例4例例5 有有30名学生,每个学生包括学号、姓名、成绩,名学生,每个学生包括学号、姓名、成绩, 要求找出成绩最高者的学号、姓名和成绩。要求找出成绩最高者的学号、姓名和成绩。main( )struct stu long n; char na20; int s; ; struct stu t30,*p; int i,k; for(i=0

7、;i30;i+) scanf(%ld%s%d,&ti.n,ti.na,&ti.s); k=0; for(i=1;itk.s)k=i; p=t+k; printf(%ld %s %4dn,p- -n,p- -na,p- -s); 3. 用指向结构体的指针作函数参数用指向结构体的指针作函数参数#include string.h#define format %dn%sn%f n%f n%f nstruct student int num; char name20; float score3; ;main( ) void print(struct student *p); struct

8、 student stu; stu.num=12345; strcpy(,li lin); stu.score0=67.5; stu.score1=89; stu.score2=78.6; print(&stu);void print(struct student *p) printf(format, p- -num, p- -name, p- -score0, p- -score1, p- -score2);例例611.2 共用体共用体union tt int i; char ch; float f; union tt a,b,c;a.ch=x;a.i=28;a.f=6.6;b=a;11.3 枚举类型枚举类型enum weekdaysun,mon,tue,wed,thu,fri,sat;enum weekday day1,day2;day1=sun;day2=(enum weekday)2;scanf(%d,&n);switch(n) case 1:day1=mon;break; case 2:day1=tue;break; printf(%dn,day2);switch(day1) case mon: printf(monn);break; typedef 已定义类型名已定义类型名 新类型名新类型名 ty

温馨提示

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

评论

0/150

提交评论