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

定义结构类型数组.PPT

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

* * * * * * * * * * * * * * * * * * * * 程序清单 struct student{ int num; char name[20]; int score; char grade; }; void main( ) { struct student s[10]; ……//输入学生记录 count = set_grade( s, 10); ……//输出统计结果 } int set_grade( struct student * p, int n ) { int i, count = 0; /* 计数器 */ for(i = 0; i n; i++, p++){ if(p-score = 85) p-grade = A; else if(p-score = 70) p-grade = B; else if(p-score = 60) p-grade = C; else{ p-grade = D; count++; } } return count; } ◆ 形参:结构指针 ◆ 实参:结构数组名 几点说明 案例分析:结构数组名s作参数,实质上就是结构指针作函数参数。数组名代表数组首地址。结构数组名与结构指针都可做为函数参数。 相比结构变量作函数参数:结构指针作函数参数的效率更高,因而是更佳的选择。 9.3.3 结构指针作为函数参数 9.3.3 结构指针作函数参数 综合案例 【例9-8】编写学生信息管理程序,实现n个学生基本信息的输入、信息修改、排序与输出。 要求:多模块结构,编写自定义函数来实现。 学生信息:学号、姓名、语文、数学、英语、总分。 ● 前五项:是基本项。 ● 总分:计算项。 9.3.3 结构指针作函数参数 功能分析 ? 输入模块:输入n个学生基本信息,计算个人总分。 ? 修改模块:根据学号和修改项目,修改指定学生某项成绩,重新计算总分。 ? 排序模块:按总分由高到低排序学生信息。 ? 输出模块:按表格形式输出n个学生的的全部信息。 9.3.3 结构指针作函数参数 数据结构设计 struct student{ int num; char name[10]; int chinese,math,english,total; } struct student s[50]; 9.3.3 结构指针作函数参数 模块结构设计 main() input_student() update_student() output_student() sort_student input_student函数设计 功能:输入n个学生基本信息,计算每个学生总分,返回n个学生信息记录。 函数首部: void inupt_student( struct student * p , int n ) 算法用伪代码描述 for(i=0;in;i++){ ? 输入某学生信息 = p[i]; ? 计算该生总分; } input_student()函数代码 void input_student( struct student * p , int n ) { int i; for(i=0;in;i++){ printf(\n第%d个学生基本信息:\n,i+1); printf(学号 姓名 语文 数学 英语:); scanf(“%d%s”, p[i].num, p[i].name); scanf(%d%d%d, p[i].chinese, p[i].math, p[i].english); p[i].total=p[i].chinese+p[i].math+p[i].english; } } ? 形参:结构指针,传址。 update_student函数设计 功能:根据学号和修改项目编号,修改指定学生某项成绩,并重新计算总分,返回修改后的该生信息。函数首部: void update_student( struct student * p , int n, int num, int item, int score) 算法用伪代码描述 ? 根

文档评论(0)

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

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

1亿VIP精品文档

相关文档