首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,其功能是:把低于平均分的学生数据放入b所
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,其功能是:把低于平均分的学生数据放入b所
admin
2018-10-21
77
问题
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,其功能是:把低于平均分的学生数据放入b所指的数组中,低于平均分的学生人数通过形参n传回,平均分通过函数值返回。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#include<stdio.h>
#define N8
typedef struct
{
char num[10];
double s;
}STREC;
double fun(STREC*a,STREC*b,
int*n)
{
}
void main()
{
STREC s[N]={{"GA05",85},{"GA03",76},{"GA02",69},{"GA04",85},{"GA01",91},{"GA07",72},{"GA08",64},{"GA06",87}};
STREC h[N];
int i,n;
double ave;
ave=fun(s,h,&n);
printf("The%d student data which is lower than%7.3f:\n",n,ave);
for(i=0;i<n;i++)
/*输出成绩低于平均值的学生记录*/
printf("%s%4.lf\n",h
.num,h
.s);
printf("\n");
}
选项
答案
double fun(STREC*a,STREC*b,int*n) { int i,j=0; double av=0.0; for(i=0;i<N;i++) av=av+a[i].s; av=av/N;/*求平均值*/ for(i:0;i<N;i++) if(a[i].s<av) b[j++]=a[i]; /*将低于平均值的学生记录存入结构体数组b中*/ *n=j; /*指针传回低于平均值的学生人数*/ return av; /*返回平均值*/ }
解析
本题使用循环语句和条件判断语句来实现程序操作,第1个循环语句的作用是求出总分,然后求出平均分av。第2个循环的作用是将分数低于平均分的学生记录存入结构体数组b中。
转载请注明原文地址:https://kaotiyun.com/show/kMxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序运行后的输出结果是______。main(){inta=3,b=4,c=5,t=99;i[(b<a&&a<C)t=a;a=c;c=t;if(a<c&&b<C)t=b;b=a;a=t
以下程序的输出结果是【】。#include<stdio.h>main(){inta=2,b=3,c=4;a*=16+(b++)-(++c);Printf("%d",a);}
以下程序的输出结果是()。#include<stdio.h>voidmain(){intf,f1,f2,i;f1=0;f2=1;printf("%d%d",f1,f2);for(i=3;i<=5;i++
已知字母A的ASCII码为65,以下程序运行后的输出结果是【】。main(){chara,b;a=’A’+’5’-’3’;b=a+’6’-’2’;printf("%d%c\n",a,b);}
现有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向—个链表中连续的三个结点。 street node { char data; struct node *next; } *p,*q
设有如下程序#include<stdio.h>main(){int**k,*j,i=100;j=&i;k=&j;printf("%d\n",**k);}上述程序的输出结果是______
下面程序段的运行结果是()。#include<stdio.h>voidmain(){charstr[]="ABC",*p=str;pfintf("%d\n",*(p+3));}
下列程序执行后的输出结果是______。main(){intm[][3]={1,4.7,6,5,8,3,6,9};inti,k=2for(i=0,i<3;i++){printf("%d",m[k][
设有定义语句:int a[][3]={{0},{1}{2}};,则数组元素a[1][2]的值是【 】。
随机试题
双手烧伤病人,可见水疱,均匀一致潮红,愈合后不可能出现的情况是()
某孕妇,35岁,孕42周,临产10小时。检查:胎心音120次/分,宫高34cm,有水囊感,S=0,B超双顶径9cm,羊水深度2.5cm,其处理以下哪项为最佳()。
某女,经来淋漓12日未净,量少色暗,小腹疼痛,舌暗脉沉涩。治法是
口腔颌面部感染的主要途径是
在对G公司2009年度财务报表审计中,庚注册会计师负责银行存款函证工作,在审计过程中,庚注册会计师遇到以下问题,请代为作出正确的专业判断。函证银行存款时的处理中,正确的有()。
目前市售的USBFlashDisk(俗称优盘)是一种()。
你认为刑满释放人员重新犯罪,主要是什么原因?
阅读材料,回答下列问题。注:化学需氧量:废水、废水处理厂出水和污水中,能被强氧化剂氧化的物质的氧当量。化学需氧量越高,表示水中有机污染物越多,污染越严重。总氮:水中各种形态无机和有机氮的总量。氨氮:水中以游离氨和铵离子形式存在的氮,是总
Unlikeanearthquake,ademographicdisasterdoesnotstrikewithoutwarning.Japan’spopulationof127mispredictedtofallto
WhatmadeJoanRyandecidetobeasportswriter?"Tenyearsago,IwaseditingnewsstoriesattheOrlandoSentinelinFlorida-
最新回复
(
0
)