首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是按分数的高低排列学生的记录,低分在前。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是按分数的高低排列学生的记录,低分在前。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中
admin
2009-02-15
149
问题
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是按分数的高低排列学生的记录,低分在前。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include<stdio.h>
#define N 16
typedef struct
{ char mum[10);
int s;
}STREC;
int fun (STREC a[ ])
{
}
main ()
{
STREC s[N]={{“GA005”,88},{“GA003”,64},
{“CA002”,77},{“GA004”,89},{“GA001”,54},
{“GA007”,72},{“GA008”,72},{“GA006”,65},
{“GA015”,83},{“GA013”,95},{“GA012”,55},
{“GA014”,68},{“GA01l”,78},{“GA017”,53},
{“GA018”,92},{“GA016”,82}};
int i;
FILE *out;
fun(s);
printf(“The data after sorted :\n”);
for(i=0;i<N;i++)
{
if((i)%4==0)
/*每行输出4个学生记录*/
printf(“\n”);
printf(“%s %4d ”,s
.num,s
.s);
}
printf(“\n”);
out=fopen(“out21.dat”,“w”);
for(i=0;i<N;i++)
{
if((i)%4==0&&i)
fprintf(out,“\n”);
fPrintf(out,“%4d”,s
.s);
}
fprintf(out,“\n”);
fClose(out);
}
选项
答案
int fun(STREC a[]) { int i,j; STREC t; for(i=l;i<N;i++) /*用冒泡法进行排序,进行N-1次比较*/ for(j=0;j<N-1;j++) /*在每—次比较中要进行N-1次两两比较*/ if(a[j].s>a[j+1].s) /*按分数的高低排列学生的记录,低分在前*/ { t=a[j]; a[j]=a[j+1]; a[j+1]=t; } }
解析
冒泡法算法思路:如果有N个数,则要进行N-1次比较,在每—次比较中要进行N-1次两两比较(这种算法较好理解但不是最精的)。所谓两两比较就是从头到尾依次将相邻两个数进行比较并将其中大的数放在前或在后(若要求从小到大排序,则大的数要放在后。反之则对调),即两两比较后这两个数要形成题中所要求的顺序。由于总是从头到尾进行比较,所以第1次比较结束后,最大(或最小)数肯定在最后,第2次比较结束后,次最大(或次最小)数肯定在倒数的第2个数,依次类推,所以进行第一次比较时必须比较到最后一个数,而进行第2次比较时只要比较到倒数的第2个数即可,所以进行第 i次比较I时只需比较N-i次即可(这种算法较难理解,但它是最好的)。
转载请注明原文地址:https://www.kaotiyun.com/show/QTID777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
20世纪上半叶,发生了以()和()为核心的物理学革命,加上其后的宇宙大爆炸模型、DNA螺旋结构、板块构造理论、计算机科学,这六大科学理论的突破,共同确立了现代科学体系的基本结构。
中国探月计划迅速发展,下列对中国航天领域描述错误的是()。
下列各项.不属于第三次工业革命内容的是()。
一位学生在日记里这样写道:“晚上,我们一家来到海边游玩,海风吹拂着我的脸,特别舒服”。你对这句话的理解是()。
市场在资源配置中发挥着越来越重要的作用,但面对世界金融危机,市场的失灵引起了各国政府的重视。市场不具有的功能是()。
近些年.我国取得了一批重大科技创新成果,实现部分领域由“跟随”到“领跑”的跨越。以下说法不正确的是()。
养花专业户李某为防止偷花,在花房周围私拉电网。一日晚,白某偷花不慎触电.经送医院抢救,不治身亡。李某对这种结果的主观心理态度是什么?()
张某系某市人民政府办公室工作人员,在2014年年度考核中被定为不称职,张某对该考核结果不服,他可以采取的救济措施是()。
某车间加工一批零件,原计划每天加工100个,刚好如期完成,后改进技术,每天多加工10个,结果提前2天完成,这批零件有()个。
随机试题
1835年,印度总督本丁克决定:“英国政府的伟大目标应该是在印度本地人中间提倡欧洲文艺和科学,所拨了的一切教育经费最好完全用在英语教育上。”这表明英国当局力图
患者,女,28岁。妊娠2个月,因进食不慎致脘腹胀痛,恶心欲呕,腹泻,舌苔白,脉滑迟。用药首选
下列各项,对诊断肝性脑病最有意义的是()
如果招标人需要修改开标时间和地点的,应以()形式通知所有招标文件的收受人。
目前我国权证交易实行()回转交易。
下列各项资产、负债中,应当采用公允价值进行后续计量的有()。
下列各项审计程序中,()可以帮助注册会计师证实X公司应收票据在财务报表中列报与披露的完整性认定。
知识的巩固主要通过()两个环节来实现。
一、注意事项1.申论考试必须在指定位置用钢笔或圆珠笔作答,并在指定的位置填写(或填涂)自己的姓名及有关信息。2.申论考试与一般的写作考试不同,它是对应考者阅读理解能力、分析能力、提出并解决问题能力和文字表达能力的综合测试。3.请先仔
(1)LasVegasusesflashinglightsandringingbellstocreateanillusionofrewardandtoencouragerisktaking.Insurancecomp
最新回复
(
0
)