- 1、本文档共24页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C强化训练实验报告[精]
佛山科学技术学院
实 验 报 告
课程名称 程序设计强化课程设计
专业班级 11网络工程1班 姓 名 王莹超 学 号 2011394101
指导教师 李娅 张德丰 韦庆清 杨定安 成 绩 日 期 2013.1.07
一.学生成绩排名
一,实验题目要求:
采用选择法,将学生成绩从高到低进行排序,再输入一个学生的成绩,将此成绩按照排序规律插入已排好序的学生成绩数组,最后将排好序的成绩单进行反序存放。
二,系统功能:
模块一:实现10个成绩的输入和从高到低的输出。
模块二:实现1个成绩的插入和11个成绩从高到低的输出。
模块三:实现11个学生成绩反序输出。
三:实验设计的步骤:
主函数里动态的申请一个用于存储11个学生的空间,然后一一输入10个学生的成绩;
用选择法对10个学生成绩进行排序;
再输入一个学生的成绩,进行选择算法排序,实现11个学生的升序和降序的排序。输出结果;
相应的程序N—S图如下
开始
动态的申请一个存储11个int数组a[11].
输入10个学生的成绩到a[1…10]
运用选择法进行降序排序学生的成绩,将a [1…10]数据输出。
再输入一个学生的成绩赋值给a[11].
继续运用选择法进行11个成绩的降序排序
输出排序后的结果
再运用选择法升序排序学生成绩
输出排序后的结果
程序结束
四,实验设计源代码:
#includestdio.h
void main ()
{
int a[11],i,j,m,n,h,t;
printf(输入10个学生的成绩:);
for(i=0;i10;i++)
scanf(%d,a[i]);
for(j=0;j9;j++)
for(i=0;i9-j;i++)
if(a[i]a[i+1])
{m=a[i];
a[i]=a[i+1];
a[i+1]=m;
}
printf(从高到低排列10个学生成绩:);
for(i=0;i=9;i++)
printf(%d,a[i]);
printf(\n);
printf(新输入一个学生的成绩:);
scanf(%d,t);
a[11]=t;
for(i=0;i11;i++)
if(a[i]t)
{n=a[i];
a[i]=t;
t=n;
}
printf(输出11个学生的成绩:);
for(i=0;i11;i++)
printf(%d,a[i]);
printf(\n);
for(i=0;i11/2;i++)
{h=a[i];
a[i]=a[11-i-1];
a[11-i-1]=h;
}
printf(反序输出的学生成绩:);
for(i=0;i11;i++)
printf(%d,a[i]);
printf(\n);
}
五,实验设计的结果:
六,实验设计的分析讨论
解决问题:
编写程序之前插入操作失败,错误在数组的定义上,所以在程序开始就要申请一个储存11数据的数组,以便之后的数据插入。
得意之处:
(1)在理解选择算法的基础上自己编写一个基于选择法思路的排序算法。
3,心得体会:
不足:用运函数调用可能程序会更佳便捷
体会:通过实验使自己对选择算法变得更清晰。
二. 根据条件进行学生成绩排名
一,实验题目要求:
进行 n个学生成绩从高到低排名, 排名方式根据函数的style参数进行,如style为‘a按升序排,style为 d 按降序排。 ( a:ascending 升,d:descending 降)
编写多个不同函数,使之能实现不同的排序算法(3种以上),再编写一个通用输出函数,(要求用函数指针做参数)能分别打印不同排序算法的结果。
二,系统功能:
输入N个学生的成绩调用不同的算法实现升序或降序排序学生成绩,然后输出排序好的成绩
模块一:主函数实现存储学生的成绩很函数调用
模块二:通用的输出函数show(int a[ ],int n,int *(* fun)(a[ ], int n ))实现成绩输出
模块三:选择法排序函数
模块四:冒泡法排序函数
模块五:插入法排序函数
三.实验设计的步骤:
在函数中进行10个学生成绩从高到低排名 sort(int a[10])
改进
您可能关注的文档
- CRM案例分析[精].ppt
- CRM系统操作手册[精].doc
- CorelDraw12基础课件6[精].ppt
- CRO算法[精].ppt
- CRM营销策略及其成功案例分析[精].ppt
- CRF[精].ppt
- CRM概论[精].ppt
- CRP临床意义[精].ppt
- CRM无纸化操作手册201405[精].docx
- cr的基本性质[精].docx
- 2025年金肯职业技术学院单招职业适应性测试题库带答案.docx
- 2025年钦州幼儿师范高等专科学校单招综合素质考试题库完美版.docx
- 2025年钟山职业技术学院单招职业适应性考试题库参考答案.docx
- 2025年金华职业技术学院单招职业技能测试题库附答案.docx
- 2025年闽南理工学院单招职业技能测试题库审定版.docx
- 2025年闽南理工学院单招综合素质考试题库审定版.docx
- 2025年闽南理工学院单招职业倾向性考试题库汇编.docx
- 2025年闽南理工学院单招职业倾向性考试题库推荐.docx
- 2025年闽北职业技术学院单招综合素质考试题库1套.docx
- 2025年长沙轨道交通职业学院单招职业技能考试题库一套.docx
文档评论(0)