C语言程序设计课件:结构与联合.ppt

C语言程序设计课件:结构与联合.ppt

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

【例9.3】结构指针在程序中的使用。程序如下:structstudent{intnum;charname[20];charsex;intage;}stu[3]={{10001,”LiLin”,’M’,17},{10002,”ZhangFun”,’M’,18},{10003,”WangMin”,’F’,19}};#includestdio.hvoidmain(){structstudent*pstu;printf(”No.namesexage\n”);for(pstu=stu;pstustu+3;pstu++)printf(“%sd%-20s%2c%4d\n”,pstu-num,pstu-name,pstu-sex,pstu-age);}程序运行结果如下:No.namesexage10001LiLinM1710002ZhangFunM1810003WangMinF199.4结构与函数一、结构用作函数的参数新的C标准允许用整个结构作为函数的参数传递,但必须保证实参与形参的类型相同。说明:把一个完整的结构变量作为参数递,虽然合法,但要将全部成员值一个个传递,费时间又费空间,开销大。如果结构类型还有一些成员是数组,则程序运行的效率会大大降化。在这种情况下,用指针作函数参数比较好,能提高运行效率。【例9.4】结构变量stu内含学生学号、姓名和三门课的成绩。要求在main()函数中赋值,在另外一个函数print中将它们打印输出。程序如下:#defineformat”%d\n%s\n%f\n%f\n%f\n”structstudent{intnum;charname[20];floatscore[3];};#includestdio.hvoidmain(){voidprint();structstudentstu;stu.num=10001;strcpy(stu.name,”Funjun”);stu.score[0]=76.8;stu.score[1]=98;stu.score[2]=87.6;print(stu);}voidprint(p)structstudent*p;{printf(format,p-num,p-name,p-score[0],p-score[1],p-score[2]);printf(“\n”);}程序运行结果如下:10001Funjun76.80000099.00000087.59998二、函数返回结构值当函数返回值是结构变量时,该函数称为结构型函数。旧的C标准不允许把结构变量作为函数返回值使用。为建立结构与函数的联系,仍然要通过指针,即函数可以返回指向结构的指针。返回结构指针的函数称为结构指针型函数。新的C标准增加了支持结构变量作为函数返回值的功能。结构型函数定义的一般形式:struct结构名函数名();其中结构名必须在前面已经被定义过。【例9.5】有4个学生,每个学生的数据包括学号、姓名、成绩,要求写一函数找出成绩最高者的姓名和成绩。程序如下:structstudent{intnum;charname[20];intscore;};#includestdio.hvoidmain(){structstudenttmp,fimax();tmp=fimax();printf(”Themaximumscore:\n”);printf(”No.%d\nname:%s\nscore:%d\n”,tmp.num,tmp.name,tmp.score);}structstudentfimax(){structstudentstu[4];inti,j=0,max;for(i=0;i4;i++)scanf(”%d%s%d”,stu[i].num,stu[i].name,stu[i].score);max=s

文档评论(0)

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

中医资格证持证人

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

领域认证该用户于2023年05月10日上传了中医资格证

1亿VIP精品文档

相关文档