第八章复合数据类型.ppt

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

第8章 复合数据类型;第8章 复合数据类型; 复合类型(构造类型);8.1结构类型(struct);例: struct student { char name[20]; int age; float score; };;关于结构类型定义的几点说明:;2. 结构(变量)、结构数组、结构指针的定义;(2) 间接定义(常用) : 先定义结构类型,然后定义结构(变量);;(3) 一次性定义(不常用) :在定义结构类型的同时定义 结构,但结构类型无类型名。;3. 嵌套结构和递归结构 ;(2)递归结构一个结构的某些成员与该结构属于同一类型 ;4. 结构的存储分配;二. 结构成员的访问;例: struct xy { int x; float y; } a, b,*c=b, d; a.x=7; a.y=3.6; c-x =a.x ; (*c).y=a.y ; d=b ;;例: struct date { int year ; int month ; int day; }; struct employee { char name[20]; struct date birthday; float salary; };;例 : struct employee p; strcpy(p.name, zhangsan); p.salary = 850; p.birthday.year = 1960; p.birthday.month =12; p.birthday.day = 25;;三. 结构成员的初始化; 使用说明:;例1. 下列程序的运行结果是 .; #include stdio.h struct sample { int num; char color[10]; }; main( ) { struct sample car[5]={101,Green, 201,Yellow, 105,Red, 220,Blue, 309,White}; struct sample *p; printf(--number----color--\n); for (p=car;pcar+5;p++) printf(%6d %10s\n, p-num , p-color);};四.结构在函数间的传递;#include string.h struct sample { int a,b;char *ch; }; void f1(struct sample parm) { parm.a +=parm.b; parm.ch[2] = x; printf(“%d %s\n, parm.a,parm.ch);} main() { struct sample arg; arg.a=1000; arg.b=100; arg.ch =abcd; f1(arg); printf( %d %s\n, arg.a, arg.ch);};#include string.h struct sample { int a,b;char *ch; }; void f1(struct sample *p) { p-a +=p-b; p-ch[2] = x; printf(“%d %s\n, p-a,p-ch);} main() { struct sample arg; arg.a=1000; arg.b=100; arg.ch =abcd; f1(arg); printf( %d %s\n, arg.a, arg.ch);};8.2 联合类型(union);例: union data { int i; char c; float f; } a, b; ;a.c;3. 联合与结构的比较 (P209); u

文档评论(0)

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

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

1亿VIP精品文档

相关文档