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

下篇-10 c语言程序设计_2013-2014-2(v1.9).pptVIP

  1. 1、本文档共41页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * 注意: union变量大小看最大的那个 * * * * * * 5、因为 workday是枚举类型,必须赋值枚举类型 * * * * 10.5 链表 例:保序插入给定结点的函数 /*函数功能: 保序插入给定的结点 /*入口参数: 链表的头指针和给定结点的地址 /*返回值: 链表的头指针*/ STUNODE *insert(struct student *head, struct student *stud) {struct student *p0,*p1,*p2 ; p1=head;p0=stud; if(head==NULL) //表为空表 {head=p0;p0-next=NULL;} else //表不空 {while ((p0-nump1-num)(p1-next!=NULL)) { p2=p1;p1=p1-next;} //定位 if(p0-num=p1-num) //插入:3种可能情况 {if(head==p1)head=p0 ; //可能情况② else { p2-next=p0; //可能情况 ① p0-next=p1; } else{p1-next=p0;p0-next=NULL;}}//可能情况③ n++; return head;} 10.6 共用体 union 共用体类型名 { 类型标识符 成员名; 类型标识符 成员名; ……………. }; 如, union data { int i; char ch; float f; }a,b,c; … b.ch=a; 共用体变量的成员的引用与结构体成员的引用形式上一样: 共用体变量名.成员名 共用体类型定义的一般形式: 共用体是构造数据类型 使几个不同类型的变量共占同一段内存!!!(相互覆盖) a f ch i sizeof(union data)=4 10.6 共用体 (也叫联合体) 关于共用体类型的几点说明:(1-6) 1、共用体类型变量的成员共占同一段内存,每一时刻只能有一个成员的值存放在其中 2、最后一次存放共用体成员的值将覆盖掉其他成员的值 如,a.i=1; a.ch=‘a’; a.f=1.5; 3、共用体变量和各成员的地址,实际是同一个地址 4、不能对共用体变量名赋值,不能对共用体变量初始化 如, ① a=1; X ② m=a; X ③ union{ int i; char ch; float f}a={1,’a’,1.5}; X 5、不能把共用体变量作为函数参数,不能把共用体类型作为函数返回值类型,但是可以使用指向共用体变量的指针 6、共用体可以出现在结构体类型中,也可以定义共用体数组.同样结构体可以出现在共用体类型中,即:结构体和数组都可以作为共用体的成员. 10.6 共用体 (也叫联合体) 例:一个学校的选举登记:其中有学生和教师 (共用体的应用) 学生登记信息为:号码 姓名 性别 职业 班级 教师登记信息为:号码 姓名 性别 职业 职务 struct { int num; char name[10]; char sex; char job; union { int class; char position[10]; }category; }; 10.6 共用体 (也叫联合体) #include stdio.h #define N0 2 #define FORMAT %6d%-10s%-3c%-3c% struct { int num; char name[10]; char sex; char job; union { int class; char position[10]; } category; }p[N0]; 10.6 共用体 (也叫联合体) void main( ) { int i; printf(请输入%d个人的信息:\n,N0); printf(“号码 姓名 性别 工作 :\n); for (i=0;iN0;i++) {scanf (%d%s %c %c,p[i].num,p[i].name,p[i].sex,p[i].job); if(p[i].job==s) {printf(请输入班级:\n); scanf(%d,p[i].category·cl

您可能关注的文档

文档评论(0)

celkhn5460 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档