首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把分数最高的学生数据放在h所指的数组中,注意:分数最高的学生可能不止一个,函数返回分数最高的学生的人数。 注意:部分源程序在文件PROG1.C中
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把分数最高的学生数据放在h所指的数组中,注意:分数最高的学生可能不止一个,函数返回分数最高的学生的人数。 注意:部分源程序在文件PROG1.C中
admin
2018-09-27
56
问题
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把分数最高的学生数据放在h所指的数组中,注意:分数最高的学生可能不止一个,函数返回分数最高的学生的人数。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
1 #include<stdio.h>
2 #define N 16
3 typedef atruct
4 { char num[10];
5 int s;
6 } STREC;
7 int fun(STREC *a,STREC *b]
8 {
9
10 }
11 main()
12 {STREC s[N]=({’’GA05’’,85},{’’GA03¨,76},{’’GA02’’,69},{’’GA04’’,85},{.tGAOl”,91},{’’GA07’’,72},{’’GA08’’,64},{’’GA06”,87},{’’GAOl5’’,85},{’’GAOl3’’,91},{’’GA012’’,64),{”GAOl4”,91),{’’GA011’’,77},{’’GAOl7’’,64),{’’GA018’’,64},{’’GA016’’,72}};
13 STREC h[N];
14 int i,n;FTLE *out;
15 n=fun(s,h);
16 printf(’’The%d highest score:\n’’,n);
17 for(i=0;i<n; i++)
18 printf(’’%s %4d\n’’,h
.num,h
.s);
19 printf(’’\n’’);
20 out=fopen(’’out.clat’’,’’w’’);
21 fprintf(out,’’%d\n’’,n);
22 for(i=0;i<n;i++)
23 fprintf(out,’’%4d\n’’,h
.s);
24 fclose(out);
25 }
选项
答案
1 int i,max=a[0].s,n=0; 2 for(i=1;i<N; i++) 3 if(max<a[i].s)max=a[i].s;/*找出最高成绩*/ 4 for(i=0;i<N;i++) 5 if(max==a[i].s)b[n++]=a[i];/*找相等的最高成绩并存入数组b中*/ 6 return n; /*返回符合条件的人数*/
解析
程序功能是把分数最高的学生数据放在h所指的数组中。
(1)要把最高分数的学生数据放在数组中,首先求出最高分数,再使用一个for循环把所有的成绩进行比较,找出最高的分数来。
(2)找出所有与最高分数相等的学生,并将最高分数的人数累加。
转载请注明原文地址:https://kaotiyun.com/show/aAxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
对长度为n的线性表进行顺序查找,在最坏的情况下需要比较的次数为()。
下面程序的输出结果是()。#include"stdio.h"intsub(intm){statica=4;a+=m;returna;}voidmain(){inti=2
以下程序的输出结果是______。#include<stdio.h>#defineSQR(x)x*xmain(){inta,k=3;a=++SQR(k+1);printf("%d\n",a
数据的存储结构是指
下面关于对象概念的描述中,错误的是
下列程序段的运行结果是______。charstr[]="ABCD",*p=str;printf("%d\n",*(p+3));
若有程序fun(inta,intb){staticintc=0;c+=a+b;rerurnc;}main(){intx=5,y=3,z=7
有如下程序: main() {char ch[2][5]={"6937","8254"},*p[2]; int i,j,s=0; for(i=0;i<2;i++)p[i]=ch[i]; for(i=0;i<2;i++) for(j=0;p[i][j]!=’
以下关于C语言数据类型的叙述中正确的是()。
若各选项中所用变量已正确定义,fun()函数中通过return语句返回一个函数值,下列选项中错误的程序是()。
随机试题
唇轴嵴最显著的牙是
决定妊娠合并阑尾炎的预后主要因素是
需要进行诊断性刮宫术的情况,应除外
维持个体生命,包括心跳、呼吸、消化、体温、睡眠等重要生理功能的中枢系统是脑干。()
根据现行《建设工程施工合同示范文本》的规定,发包人未按约定时间预付工程款,则承包人应在()向发包人发出要求预付的通知。
目前,中国银联股份有限公司,是唯一经国务院同意,由中国人民银行批准设立的银行卡清算机构。()
能够从上述资料中推出的是:()
材料 近日,特拉维夫大学宣布该学校实验室3D打印出了一颗“心脏”,该心脏不仅具有外形,还有细胞、血管和其他支撑结构,甚至可以像心脏一样收缩,但长度只有2.5厘米。该实验团队负责人说:“与过去相比,这项研究成果的突破点在于,这不仅是一个外观打印的心脏,而
当一个类对象行将消亡时,系统自动调用
ThereareagrowingnumberoflanguageimmersionschoolsintheUnitedStates,includingonethatwasfoundedinColumbiacall
最新回复
(
0
)