首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是按分数的高低排列学生的记录,低分在前。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是按分数的高低排列学生的记录,低分在前。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中
admin
2009-02-15
157
问题
学生的记录由学号和成绩组成,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://kaotiyun.com/show/QTID777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
中国的英文名称“CHINA”的小写就是“瓷器”的意思,“CHINA”的英文发音源自景德镇的历史名称“昌南”,并以此突出景德镇瓷器在世界上的影响和地位。以下不属于景德镇四大传统名瓷的是()。
村民自治是中国共产党领导亿万农民发展中国特色社会主义民主政治的伟大创举。扩大农村基层民主,实行村民自治,大大激发了广大农民当家作主的积极性、创造性和责任感,掀开了中国农村民主政治建设的新篇章。下列关于村民自治的表述错误的一项是()。
张某因不服税务局查封财产决定向上级机关申请复议,要求撤销查封决定。但没有提出赔偿请求。复议机关经审查认为该查封决定违法,决定予以撤销。对于查封决定造成的财产损失,复议机关正确的做法是什么?()
中国APEC峰会批准了《亚太经合组织互联互通蓝图》这一里程碑式文件,决心在2025年前实现()的远景目标,并完成共同确立的具体指标。
国家机构是我国宪法的主要内容之一。下列有关国家机构的说法正确的是()。
根据我国宪法规定,下列选项中哪一种情况不是公民获得物质帮助权的条件?()
政府为了保护农业生产者,对部分农业产品规定了保护价格。为了采取这种价格政策,应采取的相应措施是()。
10个非零不同自然数的和是1001,则它们的最大公约数的最大值是多少?
若一个三角形的所有边长都是整数,其周长是奇数,且已知其中的两边长分别为8和2012.则满足条件的三角形总个数是?
随机试题
2008年以来,福建省克服冰雪灾害天气影响,积极应对国内国际各种环境变化,工业经济继续延续上年度平稳的运行态势。1-2月,福建省规模以上工业完成增加值528.94亿元,增速与上年同期持平;其中,2月完成工业增加值234.44亿元,同比增长21.2%,增速较
试述战略决策的科学化原则与民主化原则。
在肾小球病的发病机制中,下列哪种说法不正确
A咖啡因B哌醋甲酯C尼可刹米D洛贝林E纳洛酮常用于新生儿窒息及一氧化碳中毒的是
下列关于冠状动脉狭窄的描述,正确的是
女,3岁,颈部肿物约1cm,稍高起于皮肤,圆形,边界不甚清楚,皮表正常。肿块呈青蓝色,质软,有压缩性,压迫时消失,去压后即复原关于其治疗,下列说法错误的是
申请( )运输的货物,货主或其代理人应按规定向指运地检验检疫机构报检,凭指运地检验检疫机构签发的《入境货物通关单》向指运地海关办理通关手续。
9.进口货物收货人或代理人申请办理属于申领进口许可证的转关运输货物,应事先将指运地海关核发的进口转关运输货物联系单交申请人带交进境地海关。()
企业为外购存货发生的下列各项支出中,不应计入存货成本的是()。
根据《社会救助暂行办法》,负责特困人员供养申请受理,调查审核的主体是申请人本人户籍所在地的()。
最新回复
(
0
)