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

c语言复习pp一tc11.ppt

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

第十一章 结构体与共用体 11.1 概述 11.2 定义结构体的类型和定义结构体变量 11.3 结构体变量的引用 11.4 结构体变量的初始化 11.5 结构体数组 11.6 指向结构体数据的指针 11.6 用指针处理链表 #include stdio.h #include math.h struct student { long num; char name[20]; float score; }; main( ) { struct student *p, stu[3]; int i; float sum=0; …;} stu[0] stu[1] stu[2] 99001 Li Feng 89.5 99002 Wang Yi 70.5 99003 Zhao Hui 92.0 stu p 例:输入/输出三位学生基本情况,并计算平均成绩 2. 指向结构体数组的指针 p+1 p+2 注意:p定义指向结构体的指针,只能指向一个结构体型数据,不能指向结构体的成员。 #include stdio.h void main( ) { struct student *p, stu[3]; int i; float sum=0; for(i=0; i3; i++) /*输入所有数据*/ { printf(\t%d number:, i+1); scanf(%ld, stu[i].num); getchar( ); printf(\t name:); gets(stu[i].name); printf(\t score:); scanf(%f, stu[i].score); } for(p=stu; pstu+3; p++) /*输出所有数据*/ printf(\t%-8ld%-20s%-7.2f\n, p-num, p-name, p-score); for(p=stu, i=0; i3; i++) /*累加成绩*/ sum=sum+(p+i)-score; printf(\taverage=%-7.2f\n, sum/3.0); } 增加字节数为所指元素类型长28 实参 形参 结构体变量.成员 成员 结构体变量的指针 结构体指针变量 结构体变量名 同类型结构体变量 基本类型变量 数组名 成员的值 数组成员的指针 与成员同类型变量 同类型形参数组 结构体变量的指针 各成员值对应传递 3.指向结构体的指针作为函数参数 将结构体变量的值向另一个函数传递时,实现方法有三种 struct student { long num; char name[20]; float score[4]; }; num name score[0] score[1] score[2] score[3] 99001 Li Feng 89.0 76.0 90.0 0 16byte 例:一结构体类型,包含学号、姓名、及三门课成绩,编程对两位学生的数据求个人平均分。 分析: ★定义结构体存放学生的成绩 ★求平均值用函数aver实现,其参数是结构体变量的指针 ★结构体数据输出用函数pfun实现,其参数是结构体变量 #include stdio.h void main( ) { struct student stu1={99001,Li Hong,89,76,90,0}, stu2={99002,Wang Li,70.5,85.5,76,0}; void aver(struct student *p); void pfun(struct student s); printf(\tnumber\tname \t\tscore1\tscore2\tscore3\taverage\n); aver(stu1); pfun(stu1); aver(stu2); pfun(stu2); } void aver(struct student *p) { int i; float sum=0; for(i=0;i3; i++) sum=sum+p-score[i]; p-score[3]=sum/3.0; return; } void pfun(struct student s)

文档评论(0)

150****4233 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档