首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把高于等于平均分的学生数据放在b所指的数组中,高于等于平均分的学生人数通过形参n传回,平均分通过函数值返回。 注意:部分源程序在文件PROG1.
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把高于等于平均分的学生数据放在b所指的数组中,高于等于平均分的学生人数通过形参n传回,平均分通过函数值返回。 注意:部分源程序在文件PROG1.
admin
2018-09-27
82
问题
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把高于等于平均分的学生数据放在b所指的数组中,高于等于平均分的学生人数通过形参n传回,平均分通过函数值返回。
注意:部分源程序在文件PROG1.C文件中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
1 #include<stdio.h>
2 #define N 12
3 typedef struct
4 { char num[10];
5 double s;
6 } STREC;
7 double fun(STREC *a,STREC *b,int *n)
8 {
9 }
10 main()
11 {STREC s[N]={{’’GA05”,85{,{’’GA03”,76},{’’GA02’’,69},{’’GA04’’,85},{’’GA01’’,91},{’’GA07’’,72},{’’GA08’’,64},(’’GA06’’,87},{’’GA09’’,60},{’’GA11’’,79},{’’GAl2’’,73},{’’GAl0’’,90}};
12 STREC h[N], t;FILE *out;
13 int i,j,n;double ave;
14 ave=fun(s,h,&n);
15 printf(’’The %d student data which is higher than%7.3f:\n’’,n,ave);
16 for(i=0;i<n;i++)
17 printf(’’%s %4.1f\n’’,h
.num,h
.s);
18 printf(’’\n’’);
19 out=fopen(’’out.dat’’,’’w’’);
20 fprintf(out,’’%d\n%7.3f\n’’,n,ave);
21 for(i=0;i<n-1;i++)
22 for(j=i+1;j<n;j++)
23 if(h
.s<h[j].s){t=h
;h
=h[j]; h[j]=t;}
24 for(i=0;i<n;i++)
25 fprintf(out,’’%4.1f\n’’,h
.s);
26 fclose(out);}
选项
答案
1 double t=0; 2 int i; 3 *n=0; 4 for(i=0;i<N;i++)t=t+a[i].s; 5 t=t/N; 6 for (i=0; i<N;i+-b)if(a[i].s>t)b[(*n)++]=a[i]; 7 return t;
解析
该程序功能是把高于或等于平均分的学生数据放在b所指的数组中,高于等于平均分的学生人数通过形参n传回,平均分通过函数返回值返回。解题过程首先求得平均分,然后将所有成绩与平均分进行比较,如果大于或等于平均分,存入指定数组。
转载请注明原文地址:https://www.kaotiyun.com/show/k8xp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序main(){inti,j,x=0;for(i=0;i<2;i++){x++;for(j=0;j<=3;j++){if(j%2)continue;x++;}x++;
下列程序输出的结果是()。main(){inta;a=-4+4*5-6;printf("%d",a);a=4+4%5-6;printf("%d",a);a=-3+4%6/5;printf("%d",
数据独立性是数据库技术的重要特点之一,所谓数据独立性是指 _____。
设有下列程序:#include<stdio.h>#include<string.h>main(){inti;chars[10],t[10];
以下程序运行时若要正确输出函数的入口地址和输入数的绝对值,应在程序空缺处填入的正确选项是()。abs(intx){if(x>=0)returnx:elsereturn-x;}main(){i
有以下程序:#include<stdio.h>main(){printf("%d\n",NULL);}程序运行后的输出结果是()。
有以下程序 void f(int*x,int*y) { int t; t=*x;*x=*y;*y=t; } main() { int a[8]={1,2,3,4,5,6,7,8},i,*p,*q; p=a;q=&a[7]; while(p { f(p,q)
下面程序输出的结果是______。main(){inti=5,j=9,z;x=(i==j?i:(j=7));printf(:\n%d,%d",i,j);}
以下四个选项,不能看作一条语句的是()。
下面定义的结构体类型包含3个成员,其中成员变量x用来存入整型数据,成员变量y用来存入实型数据,成员变量next是指向自身结构体的指针。请将定义补充完整。structstu{intx;【】【】next;}
随机试题
设向量组α1,α2,…,αm线性无关,β1可由α1,α2,…,αm线性表示,但β1不可由α1,α2,…,αm线性表示,则().
尺神经炎常采用的手术方式
在X线束中,中心线以外的射线都称为
某管道安装工程项目,有A、B、C3家潜在投标人,A投标人近期施工任务已经饱和,但企业考虑到该管道工程项目的利润丰厚,为了使企业增效,决定投标。B投标人投标时在确定了总价的前提下,适当调整了各分项工程的报价,使得该报价既不影响总报价又可在中标后获得较好的经济
在意外伤害保险中,当被保险人因遭受意外伤害导致死亡时,保险人应支付给受益人( )。
2013年年初某农产品批发市场占地5400平方米,分为三层,房产原值1100万元,该市场第一层经营水产品、蔬菜、干鲜果品和水产品、肉禽蛋;第二层经营粮油、调味品;第三层经营日用品和服装。当地城镇土地使用税年税额为每平方米8元,计算房产余值的扣除比例为30%
A、 B、 C、 D、 C题干中的图形拼合后得下图:故本题正确答案为C。
白斑的发病因素中全身因素有()。
AFoodandDrugAdministration(FDA)advisorycommitteehasconcludedthatanovelnewtreatmentcangreatlyhelprheumatoidarth
Farmersdonotlikecrows(乌鸦)becausethesebirdseatnewly-plantedseeds(种子).Theyareafraidthattheywillnothaveanythin
最新回复
(
0
)