首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,该函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定只有一个最低分)。已给出函数的首部,请完成该函数。 注意:部分源程序在文件PROG1.C中。 请勿改动
已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,该函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定只有一个最低分)。已给出函数的首部,请完成该函数。 注意:部分源程序在文件PROG1.C中。 请勿改动
admin
2017-02-24
39
问题
已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,该函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定只有一个最低分)。已给出函数的首部,请完成该函数。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
1 #include<stdio.h>
2 #include<string.h>
3 #include<conio.h>
4 #inclucle<stdlib.h>
5 #define N 10
6 typedef struct ss
7 {char num[10];
8 int s;
9 }STU;
10 fun(STU a[],STU*S)
11 {
12
13 }
14 void main()
15 {
16 FILE*wf;
17 STU a[N]={("A01",81},{"A02",89),{"A03",66},{"A04",87),{"A05",77),{"A06",90},{"A07",79),{"A08",61),{"A09",80},{"A10",71}},m;
18 int i;
19 system("CLS");
20 printf("*****The original data*****\n");
21 for(i=0;i<N;i++)
22 printf("No=%S Mark=%d\n",a
.num,a
.s);
23 fun(a,&m);
24 printf("****THE RESULT****\n");
25 printf(“The lowest:%S,%d\n",m.num,m.s);
26 /******************/
27 wf=fopen("out.dat","W");
28 fprintf(wf,"%s,%d",m.num,m.s);
29 fclose(wf);
30 /******************/}
选项
答案
fun(STU a[],STU *s) { int i ; *s=a[0];/*先认为第1个值最小*/ for(i=0;i<N;i++)/*如果在循环的过程中再发现比第1个值更小的则赋给*s*/ if(s->s>a[i].s) *s=a[i]; }
解析
找出结构体数组元素中的最小值。先认为第1个值最小,即*s=a[0];,如果在循环的过程中发现比第1个值更小的,就将指针s指向该元素,直到找到最小元素。另外,本题还涉及结构体中的指向运算符。
转载请注明原文地址:https://jikaoti.com/ti/72i0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列程序的输出结果是______。longfun5(intn){longs;if((n==1)‖(n==2))s=2;elses=n+fun5(n-1);return(s);}main(){longx;x=fun5
下列程序段的运行结果是______。intx=0,y=0;while(x<15)y++,x+=++y;printf("%d,%d",y,x);
下列程序的循环次数是______。x=2;do{x=x*x;}while(!x);
下列程序的输出结果是()。point(char*pt);main(){charb[4]{’a’,’c’,’s’,’f’},*pt=b;pt=point(pt);printf("%c\n",*
有下列程序:fun(intx){intp;if(x==0‖x==1)return(3);p=x-fun(x-2);returnp;}main(){printf("%d\n",fun(7)
执行语句printf("%u\n",+12345)的输出结果是()。
下列程序的输出结果是()。#include<stdio.h>main(){inta=4;printf("%d\n",(a+=a-=a*a));}
对长度为n的线性表进行顺序查找,在最坏情况下需要比较的次数为()。
下面程序的功能是:计算110之间的奇数之和与偶数之和,请填空。#includemain(){inta,b,c,I;a=c=0;for(I=0;I
随机试题
在我国,门静脉高压症的主要原因是
下列哪种激素由胰岛β细胞所分泌
患者男性,43岁,既往有肉瘿病史,颈前肿块突然增大,质地坚硬如石,推之不移,应考虑为
在资源管理器中,如果失误操作将C盘文件删除,可以()。
张某接受王某的委托,以王某代理人的身份依法与李某签订了合同,对于该合同的签订,()。
2002年,一些海外旅游者来我国参加三项专线旅游,内容分别是“古典园林之旅”、“民族风情之旅”和“品尝名酒之旅”。请在下列地点中为每条专线选出四个相关的地点,在每个地点中写出一个与专线内容相关的著名游览景点,或少数民族名称,或一种名酒的产地和酒名。地点:北
一个AB型血的人需要临床输血,则他只能接受同样血型的血。()
对民主社会主义认识正确的是()。①最初的民主社会主义是资本主义社会主义②民主社会主义是马克思社会主义的分支③民主社会主义否认了社会制度的客观性④民主社会主义肯定了工人阶级的领导地位⑤民主社会主义把社会主义看成是一种道德需要、道德抗议,否认
诱导运动是一种视错觉,即观察者知觉到某个物体在运动,而实际上该物体没有发生空间移动,只是由于其他物体的运动使得被观察物体看起来好像在运动。根据上述定义,下列属于诱导运动的是:
下面对软件特点描述错误的是
最新回复
(
0
)