首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定只有一个最低分)。 注意:部分源程序存在文件PROG1.C文件中。 请勿改动主函数main和其他函数中的
已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定只有一个最低分)。 注意:部分源程序存在文件PROG1.C文件中。 请勿改动主函数main和其他函数中的
admin
2019-09-02
110
问题
已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定只有一个最低分)。
注意:部分源程序存在文件PROG1.C文件中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include<stdio.h>
#include<string.h>
#define N 10
typedef struct ss
{ char num[10];int s;}STU;
void fun(STU a[],STU*s)
{
}
main()
{STU a[N]={{"A01",81},{"A02",89},{"A03",66},{"A04",87},{"A05",77},{"A06",90},{"A07",79},{"A08",61},{"A09",80},{"A10",71}},m;
int i;VOid NONO();
printf(*****The original data *****\n");
for(i=0;i<N;i++)printf("No
=%s Mark=%d\n",a
.num,a
.s);
fun(a,&m);
printf("*****THE RESULT*****\n");
printf("The lowest:%s,%d\n",
m.num,m.s);
NONO();
}
void NONO()
{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/
FILE*rf,*wf;
STU a[N],m;
int i;
rf=fopen("in.dat","r");
wf=fopen("out.dat","w");
for(i =0 ; i < 10;i++)fscanf(rf, "%s %d", a
.num,&a
.s);
fun(a,&m);
fprintf(wf,"The
lowest:%s, %d\n",m.num,m.s);
fclose(rf);
fclose(wf); }
选项
答案
int i,min=a[0].s,j=0; for(i=1;i<N;i++) if(min>a[i].s){/*如果最低分min仍大于当前分*/ j=i;/*记住位置*/ min=a[i].s;/*把当前分赋值给min*/ } *s=a[j];
解析
(1)首先指定第一个成绩为最低分数。
(2)再使用一个for循环把所有的成绩进行比较,找出最低的分数来。
转载请注明原文地址:https://www.kaotiyun.com/show/sORp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
给定程序中,函数fun的功能是:有N×N矩阵,将矩.阵的外围元素顺时针旋转。操作顺序是:首先将第一行元素的值存入临时数组r,然后使第一列成为第一行,最后一行成为第一列,最后一列成为最后一行,临时数组中的元素成为最后一列。例如,若N=3,有下列矩阵
给定程序MODI1.C中函数fun的功能是:计算正整数num的各位上的数字之积。例如,若输入:252,则输出应该是:20。若输入:202,则输出应该是:0。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,
给定程序MODI1.C中函数fun的功能是:统计字符串中各元音字母(即:A、E、I、O、U)的个数。注意:字母不分大、小写。例如:若输入:THIsisaboot,则输出应该是:1、0、2、2、0。请改正程序中的错误,使它能得出正确
下列选项中不属于结构化程序设计方法的是
若以下选项中的变量a,b,y均已正确定义并赋值,则语法正确的switch语句是
若要求从键盘读入含有空格字符的字符串,应使用函数
以下程序函数f的功能是:当flag为1时,进行由小到大排序;当flag为0时,进行由大到小排序voidf(intb[],intn,intflag){inti,j,t;for(i=0;i<n-1;i++)for(j=i+1j<
以下C语言用户标识符中,不合法的是
随机试题
某工程划分为3个施工过程在5个施工流水段组织加快的成倍节拍流水施工,流水节拍值分别为4D,2D,6d,该工程的施工总工期为()d。
患者女性,50岁,主动脉瓣关闭不全病史25年,PDE示重度反流。如能听到AustinFlint杂音,该杂音为
A.阴B.阳C.阴中之阳D.阳中之阴E.阴中之阴
A.糖苷键B.疏水堆积力C.氢键D.3’,5’—磷酸二酯键E.Β-折叠维持DNA双链结构纵向稳定性的是
新生儿硬肿症的发生顺序为
根据《劳动法》,下列关于妇女、未成年人劳动保护的说法,正确的有()。
下列费用中,应计入建筑安装工程施工机具使用费的有()。
阿克姆厂的审计员:上周在阿克姆面包厂的夜班中,烤制的面包有6%发现有问题,而在白班中却没有发现有问题的面包。面包在被烤制的同一天接受检查,所以,夜班监控质量的质检员明显地比白天的质检员更警觉,尽管他们在夜间工作。上述论证依赖于以下哪项假设?
Whatarethesepeopleplanningtodo?
Whatdoesthespeakerdomostprobably?
最新回复
(
0
)