首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
给定程序MODll.C中函数fun的功能是:对N名学生的学习成绩,按从高到低的顺序找出前m(m≤10)g学生来,并将这些学生数据存放在一个动态分配的连续存储区中,此存储区的首地址作为函数值返回。 请改正函数fun中指定部位的错误,使它能得出正确的结
给定程序MODll.C中函数fun的功能是:对N名学生的学习成绩,按从高到低的顺序找出前m(m≤10)g学生来,并将这些学生数据存放在一个动态分配的连续存储区中,此存储区的首地址作为函数值返回。 请改正函数fun中指定部位的错误,使它能得出正确的结
admin
2013-03-29
76
问题
给定程序MODll.C中函数fun的功能是:对N名学生的学习成绩,按从高到低的顺序找出前m(m≤10)g学生来,并将这些学生数据存放在一个动态分配的连续存储区中,此存储区的首地址作为函数值返回。
请改正函数fun中指定部位的错误,使它能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!
#include
#include
#include
#define N 10
typedef struct ss
{ char num[10];
int s;
}STU;
STU*fun(STU a[],int m)
(STU b[N],*t;
int i,j,k;
/******************found*******************/
t=(STU*)calioc(sizeof(STU),m)
for(i=0;i
=a
;
for(k=0;k
{ for(i=j=0;i
if(b
.s>b[j].s) j=i;
/******************found*******************/
t(k)=b(j);
b[j].s=0;
}
return t;
}
outresult(STU a[],FILE*pf)
{ int i;
for(i=0;i
fprintf(pf,”No=%s Nark=%d\n”,
a
.num,a
.s);
fprintf(pf,”\n\n”);
}
main()
(STU a[N]={{"A01”,81},{”A02”,89},
{”A03”,66},{”A04”,87},{”A05”,77},
{”A06”,90},{"A07”,79},{”A08”,6l},
{”A09”,80},{”A10”,71}};
STU*pOrder;
int i,m;
printf(”*****The Original data
*****\n”);
outresult(a,stdout);
printf(”\nGive the number of the
stuclents who have better score:");
scanf(”%d”,&m);
while(m>10)
{printf(”\nGive the number of the
students who have better scOre:”);
scanf(”%d”,&m);
}
pOrder=fun(a,m);
printf’”*****THE RESULT *****
\n”);
printf(”The top:\n”);
for(i=0;i
printf(”%s %d\n”,pOrder
.
num,pOrder
.s);
free(pOrder);
}
选项
答案
(1)t=(STU*)calloc(sizeof(STU),m); (2)t[k]=b[j];
解析
(1)题干中要求结构体STU类型的m个学生放在动态分配的连续存储区中,“t=[STU*)callot(sizeof(STU),m)"语句没有使用分号“;"结束,因此需要在语句结尾处加分号。calloc函数是C语言的动态分配函数。分配存储空间。
(2)第二个标识下是将b数组拷贝到t数组,在C语言中,数组元素的访问使用中括号“[]"而不是元括弧“()",因此第二标识下应改成"t[k]=b[j];"
转载请注明原文地址:https://www.kaotiyun.com/show/pPJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下述关于数据库系统的叙述中正确的是______。
以下程序运行后的输出结果是【 】。main(){intx=0210;printf("%X\n",x);}
有以下程序: #include <string.h> struct STU (char name[10]; int num; }; void f(char *name, int num) {struct
以下程序的功能是:给r输入数据后计算半径为r的圆面积s,程序在编译时出错。 main() /* Beginning */ {int r;float s; scanf("%d",&r); s=*I*r*r; printf(
数据库系统的核心是 ______ 。
以下程序中函数fun的功能是:构成—个如图所示的带头结点的单向链表,在结点的数据域中放入了具有两个字符的字符串。函数disp的功能是显示输出该单向链表中所有结点中的字符串。请填空完成函数disp。#include<stdio
数据独立性分为逻辑独立性与物理独立性。当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构的应用程序不必修改,称为[]。
以下叙述中错误的是______。
有以下程序 main() {int y=10; while(y-);printf("y=%d\n",y); } 程序执行后的输出结果是______。
在结构化分析使用的数据流图(DFD)中,利用【】对其中的图形元素进行确切解释。
随机试题
Herearetwolettersfromourreadersexpressingtheirconcernaboutschoolassessment(评价):Studentsshouldbeallowedtos
张、李二人共同完成了一幅美术作品。张某听闻本地将举行大型画展,便与李某商量将该作品送去参展,但李某认为该作品并不代表自己的最高绘画水平,不同意送展。张某遂独自将该作品送展,并在画展上将其以2万元的价格卖给王某。根据我国法律,下面关于该美术作品著作权的判断,
下列哪些行为属于侵犯商业秘密的不正当竞争行为?
某实验室的主任认为,职业道德只是每个人的自觉行为,单位集体发挥不了什么作用。计量技术人员只要遵守法律法规,完成好计量检定和校准工作,就可以保证实验室的良好运行。
根据《标准施工合同》,施工准备阶段设计交底应由()组织。
某普通合伙企业的一名合伙人拟将其合伙财产份额转让给合伙企业以外的人,但合伙协议对该事项的决定规则未作约定。根据合伙企业法律制度的规定,下列关于该事项决定规则的表述中,正确的是()。
在公共航空运输中,旅客随身携带的物品或者托运行李的毁灭、遗失或者损坏完全是由于行李本身的()造成的,航空承运人不承担责任。
幼儿教育的中心任务是()。
破窗原理:一个房子如果窗户破了,没有人去修补,隔不久,其他的窗户也会莫名其妙地被人打破;一个很干净的地方,人们不好意思丢垃圾,但是一旦地上有垃圾出现之后,人们就会毫不犹豫地丢垃圾,丝毫不觉羞愧。对此,你怎么看?
A、theDoharoundcan’tbefinishedby2006B、strongpoliticalwillisnecessaryC、nationscancontinuethenegotiationevenif
最新回复
(
0
)