首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是:把指定分数范围内的学生数据放在b所指的数组中,分数范围内的学生人数由函数值返回。 例如,输入的分数是60和69,则应当把分数在60到69的学生
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是:把指定分数范围内的学生数据放在b所指的数组中,分数范围内的学生人数由函数值返回。 例如,输入的分数是60和69,则应当把分数在60到69的学生
admin
2010-09-14
71
问题
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是:把指定分数范围内的学生数据放在b所指的数组中,分数范围内的学生人数由函数值返回。
例如,输入的分数是60和69,则应当把分数在60到69的学生数据进行输出,包含60分和69分的学生数据。主函数中把60放在low中,把69放在heigh中。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include <stdio.h>
#define N 16
typedef struct
{ char num[10];
int s ;
} STREC;
int fun (STREC *a, STREC *b, int 1, int h )
{
}
main ()
{
STREC s [N] ={ { "GA005", 85 }, { "GA003", 76 },
{ "GA002", 69}, { "GA004", 85}, { "GA001", 96 } ,
{ "GA007", 72}, { "GA008", 64}, { "GA006", 87 } ,
{ "GA015", 85}, { "GA013", 94}, { "GA012", 64 } ,
{ "GA014", 91}, { "GA011", 90}, { "GA017", 64 } ,
{ "GA018", 64 } , { "GA016", 72 } };
STREC h [N], tt;
FILE *out;
int i, j, n, low, heigh, t;
printf("Enter 2 integer number low &
heigh: ");
scanf ("%d%d ", &low, &heigh);
if (heigh<low)
{t=heigh;heigh=low; low=t; }
n=fun (s,h, low, heigh);
printf ("The student’s data between
%d--%d: \n ", low, heigh);
for (i=0; i<n; i++)
printf("%s %4d\n ",h
.num, h
.s);
/*输出指定分数范围内的学生记录*/
printf("\n ");
out=fopen ("out74.dat ", "w")
fprintf(out, "%d\n ",n)-
n=fun (s,h, 80, 98);
for (i=0; i<n-1; i++)
/* 分数在80~98之间的学生记录按他数从低到高排序*/
for (j=i+l; j<n; j++)
if (h
.s>h [j] .s)
{tt=h
;h [ii =h [j] ;h [j] =tt; }
for (i=0; i<n; i++)
fprintf(out, "%4d\n ",h
.s);
fprintf(out, "\n ");
fclose (out);
}
选项
答案
int fun (STREC *a, STREC *b, int 1, int h ) { int i, j=0; for (i=0; i<N; i++) if (a [i]. s>-l&&a [i]. s<=h) /*将分数高于1,低于h的学生记录存在于结构体数组b中* / b[j++]=a[i]; return j; /*返回分数范围内的学生人数*/ }
解析
处理此类分段统计问题,可采用多分支选择语句或条件选择语句。此处采用条件选择语句解答,具体见参考答案。使用条件选择语句进行分段统计时应当注意分段范围。
转载请注明原文地址:https://kaotiyun.com/show/7WID777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
根据《行政处罚法》的规定,下列关于行政拘留的说法正确的是()。
公民、法人或其他组织认为具体行政行为侵犯了其合法权益的.可以自知道该具体行政行为之日起()日内提出行政复议申请,但是法律规定的申请期限超过的除外。
下列有关利率的说法,错误的是()。
下列以平衡国际收支的暂时不平衡为主要功能的组织是()。
某甲在银行取款时,银行工作人员因点钞失误多付给他1万元,甲以这1万元作本钱经商,获利5千元,其中2千元为其劳务管理费用成本。一个月后银行发现了多付款的事实,要求甲退回,甲不同意。下列有关该案的哪一表述是正确的?()
居住在某市A区的公民赵某对该市B区行政机关做出的行政处罚决定不服.要求复议。本案的复议机关是()。
行政机关制定的除行政法规和规章以外的其他规范性文件.在设定行政处罚上()。
张某11周岁,小学五年级学生.经常在其学校门口的一家小卖部买零食和一些学习用品,部分赊账,年终时共欠小卖部340元。小卖部老板拿着账单要求张某父亲付款,遭到张某父亲拒绝。下列说法正确的是()。
围绕着人与神、人与社会、人与自然等问题的思考,公元前6~5世纪,东西方社会几乎同时诞生了一批伟大的思想先哲。下列说法错误的是()。
某次考试有50题,答对一题得2分,答错扣1分,不答不扣分。为保证考试成绩不少于60分,该名考生至少要答对几道题?
随机试题
Students______todosomevoluntaryworkeveryyear.
Whenwasthelasttimeyouflashedafakesmileattheoffice?Forsome,itmaybejustanothermundaneaspectofworklife—putt
设,将此积分化为极坐标系下的积分,此时,I=______.
关于尿道下裂行手术治疗的原则叙述错误的是
下列事项中,企业在账务处理时应记入“资本公积”科目的有()。
我国法律规定每年的12月13日为南京大屠杀死难者国家公祭日,其意义主要在于()。
(2016·江苏)皮亚杰认为,儿童5岁以前是“无律期”,他们通常以“自我中心”的方式来考虑问题。()
(2002年)交换积分次序=________。
这使我想起了去年夏天我们度假时待过的那个村庄。(remind)
Adriverwhoisdrivingthebus______(禁止与他人谈话).
最新回复
(
0
)