- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言程序设计--chapter7-1
#include stdlib.h list(struct stud_type student) { printf(%-20s%8d%6d %3c %6.2f\n, student.name, student.num, student.age, student.sex, student.score); } main( ) { struct stud_type student[3]; int i; char ch; char numstr[20]; for ( i=1; i3; i++) { printf(\nenter all data of student[%d]:\n,i); gets(student.name); gets(numstr); student[i].num=atol(numstr); gets(numstr); student[i].age=atoi(numstr); student.sex=getchar();ch=getchar(); gets(numstr); student[i].score=atof(numstr); } printf(\n record name \t\t num age sex score\n); for(i=0;i3;i++) list(student[i]); } 例7.6:输入三个学生的信息并打印 89.5 M 18 89101 Wang Li student[0] 89.5 M 18 89101 Wang Li student student.name student.num student.age student.sex student.score 65420 65386 7.4.2 返回结构体类型值的函数 函数的定义:struct 结构体名 func( ) 函数的最后要有:return 结构体变量名;语句 一个函数可以带回一个整形、实型、字符型、指针型的函数值,也允许函数带回一个结构体类型的值。 例7.7:将7.6中输入结构体数组元素的功能用函数new_element实现。 #include stdlib.h struct stud_type new_element(void) { struct stud_type student; char numstr[20]; char ch; printf(\nenter all data of student:\n); gets(student.name); gets(numstr);student.num=atol(numstr); gets(numstr);student.age=atoi(numstr); student.sex=getchar();ch=getchar(); gets(numstr);student.score=atof(numstr); return(student); } main( ) { struct stud_type student[3]; int i; for(i=0;i3;i++) student[i]=new_element(); printf(\n name num age sex score\n); for(i=0;i3;i++) list(student[i]); } 7.5 结构体变量与指针 7.5.1 指向结构体变量的指针 一个结构体变量的指针就是该变量所占据的内存段的首地址。 定义形式:struct 结构体名 *结构体指针名; struct stud_type { char name[20]; long num; int age; char sex; float score; }; struct stud_type stu1, *p; 存放结构体变量在内存的起始地址 p = stu1; 那如何通过结构体指针来引用结构体成员呢? 使用结构体指针变量引用结构体成员的形式: 例 int n; int *p=n; *p=10; ? n=10 struct stud_type stu1; struct stud_type *p = stu1; (*p).num = 101; ? stu1.num = 101; 结构体变量名.成员名 (*结构体指针名).成员名 结构体指针名-成员名 指向运算符 优先级: 1 结合方向:从左向右 (*p).n
文档评论(0)