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

第9章结构体共用体与枚举类型_西安交大.ppt

第9章结构体共用体与枚举类型_西安交大.ppt

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

9.1 结构体 9.2 结构体数组 9.3 结构体与指针 9.4 共用体 9.5 枚举类型 9.6 用typedef定义类型 ;9.1 结构体;struct student {int num; char name[20]; char sex; int age; char addr[30]; };;定义结构体类型变量的方法;可用符号常量代表一个结构体类型;方法二:在定义类型的同时定义变量;方法三:直接定义结构类型变量;几点说明:;struct date {int month; int day; int year; }; Struct student {int num; char name[20]; int age; struct date birthday; }student1,student2; ;结构体类型变量的引用;3. 对成员变量可以象普通变量一样进行各种运算,如: sumage=student1.age+student2.age; 4. 可以引用成员的地址,也可以引用结构体变量的地址,如: scanf(“%d”, student1.num); printf(“%o”,student1); scanf(“%d,%s,%c,%d,%s”,student1); ; Struct student { int no; char name[20]; char sex; struct { int year; int month; int day; }birth; }; Struct student s;;结构体变量的初始化;9.2 结构体数组 (每个数组元素都是一个结构体类型的数据);结构体数组的引用;结构体数组的初始化;struct person { char name[20]; int count; }leader[3]={“Li”,0,”zhang”,0,”Liu”,0}; main( ) { int i, j; char leader_name[20]; for( i=1;i=10;i++) { scanf(“%s”,leader_name); for(j=0;j3;j++) if(strcmp(leader_name,leader[j].name)= =0)leader[j].count++); } for(i=0;i3;i++) printf(“%5s:%d\n”,leader[i].name,leader[i].count); };计算学生的平均成绩和不及格的人数。 ;9.3 结构体与指针;引用结构体成员的三种形式: 结构体变量名 . 成员名 (*p).成员名 p- 成员名;指向结构体数组的指针; struct student stu[3]={{10101, Li Lin, M, 18}, {10102, Zhang Fun, M, 19}, {10104, Wang Min, F, 20}}; void main() {struct student *p; printf( No. Name Sex age\n); for (p=stu; pstu+3; p++) printf(%5d %-20s %2c %4d\n, p-num, p-name, p-sex, p-age); } 注意:p定义为struct student类型,它只能指向这种类型的结构体变量,而不能指向该类型的成员(p=stu.name是错误的)其它类型的结构体变量。 ;用结构体变量和指向结构体的指针作为函数参数; #includestdio.h #define format %d\n%s\n%f\n%f\n%f\n struct student {int num; char name[20]; char sex; float score[3]; };;9.4 共用体;已知: union { int i; char c; float a; }test; 则:sizeof(test)的值是:4;? 共用体数据的特点; 4)在函数间传递共用体时,只能使用指针的方法。 5)共用体类型可以出现在

文档评论(0)

wuyoujun92 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档