重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
找答案首页 > 全部分类 > 计算机类考试
搜题
网友您好, 请在下方输入框内输入要搜索的题目:
搜题
题目内容 (请给出正确答案)
[主观题]

学生的记录由学号和成绩组成,N名学生的数据已在主函数...

学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是按分数的高低排列学生的记录,低分在前。

注意:部分源程序给出如下。

请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

试题程序:

include<stdio.h>

define N 16

typedef struct

{ char mum[10);

int s;

}STREC;

int fun (STREC a[ ])

{

}

main ()

{

STREC s[N]={{“GA005”,88},{“GA003”,64},

{“CA002”,77},{“GA004”,89},{“GA001”,54},

{“GA007”,72},{“GA008”,72},{“GA006”,65},

{“GA015”,83},{“GA013”,95},{“GA012”,55},

{“GA014”,68},{“GA01l”,78},{“GA017”,53},

{“GA018”,92},{“GA016”,82}};

int i;

FILE *out;

fun(s);

printf(“The data after sorted :\n”);

for(i=0;i<N;i++)

{

if((i)%4==0)

/*每行输出4个学生记录*/

printf(“\n”);

printf(“%s %4d ”,s[i].num,s[i].s);

}

printf(“\n”);

ut=fopen(“out21.dat”,“w”);

for(i=0;i<N;i++)

{

if((i)%4==0&&i)

fprintf(out,“\n”);

fPrintf(out,“%4d”,s[i].s);

}

fprintf(out,“\n”);

fClose(out);

}

查看答案
更多“学生的记录由学号和成绩组成,N名学生的数据已在主函数...”相关的问题

第1题

学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构件数组s中,请编写函数fun(),它的功能是:把分数最高的学生数据放在h所指的数组中。注意:分数高的学生可能不只一个,函数返回分数最高学生的人数。

注意:部分源程序给出如下。

请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

试题程序:

include <stdio.h>

define N 16

typedef struct

{ char num[10];

int s;

}STREC;

int fun(STREC *a,STREC *b)

{

}

main ()

{

STREC s [N] = { { "GA005", 85 }, { "GA003", 76 },

{ "GA002", 69 }, { "GA004", 85 }, { "GA001", 91 },

{"GA007", 72}, {"GA008", 64}, {"GA006", 87},

{ "GA015", 85), ( "GA013", 91 }, { "GA012", 64 },

{ "GA014", 91 ), { "GA011", 66}, { "GA017", 64 },

{"GA018", 64 }, {"GA016", 72 } };

STREC h[N];

int i, n;

FILE *out;

n=fun(s,h);

printf("The %d highest score :\n",n);

for (i=0; i<n; i++)

printf("%s %4d\n ",h[i].num, h[i].s);

/*输出最高分学生的学号和成绩* /

printf("\n");

ut=fopen("out45.dat", "w");

fprintf(out, "%d\n",n);

for(i=0; i<n; i++)

fprintf(out, "%4d\n ",h[i].s);

fclose(out);

}

点击查看答案

第2题

学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),该函数的功能是:把高于等于平均分的学生数据放在b所指的数组中,低于平均分的学生数据放在c所指的数组中,高于等于平均分的学生人数通过形参n传回,低于平均分的学生人数通过形参m传回,平均分通过函数值返回。

注意:部分源程序给出如下。

请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

试题程序:

include <stdio.h>

define N 12

typedef struct

{char num[10];

double S;

} STREC;

double fun(STREC *a,STREC *b,STREC *C,int *n,int *m)

{

}

main()

{

STREC s[N]={{“GA05”,65},{“GA03”,86},

{“GA02”,76},{“GA04”,95},{“GA01”,93},

{“GA07”,78},{“GA08”,68},{“GA06”,88},

{“GA09”,60},{“GAll”,54},{“GAl2”,56},

{“GAl0”,98}};

STREC h[N],l[N],t;

FILE *out;

int i,j,m,n;

double ave;

ave=fun(S,h,l,&n,&m);

printf("The %d student data which is higher than %7.3f:\n",n,ave);

for(i=0;i<n;i++)

printf("%s %4.lf\n",h[i].num,

h[i].s);

printf("\n");

printf("The %d Student data which iS lower than%7.3f:\n",m,ave);

for(i=0;i<m;i++)

printf("%s %4.1f\n",l[i].num, l[i].s);

printf("\n");

ut=fopen("out26.dat", "w");

fprintf(out, "%d\n %7.3f\n",n,ave);

for(i=0;i<n-1;i++)

for(j=i+1;i<n;j++)

if(h[i].s<h[j].s)

{t=h[i];h[i]=h[i];h[j]=t;}

/*分数从现到低排列*/

for(i=0;i<n; i++)

fprintf(out,“%4.1f\n",h[i].s);

fprintf(out,"%d\n %7.3f\n",m,ave);

for(i=0;i<m-1;i++)

for(j=i+1;i<m;j++)

if(l[i].s<l[j].s)

{t=l[i];l[i]=l[j];l[j]=t;}

/*分数从高到低排列*/

for(i=0;i<m;i++)

fprintf(out,"%4.1f\n",l[i].s);

fclose(out);

}

点击查看答案

第3题

学生的记录由学号和成绩组成,N名学生的数据已存放在主函数的结构体数组s中,请编写函数fun,它的功能是:把低于平均分的学生数据放在b所指的数组中,低于平均分的学生人数通过形参n传回,平均分通过函数值返回。

[注意] 部分源程序给出如下。

请勿改动主函数main和其他函数中的任何内容,仅在fun函数的花括号中填入所编写的若干语句。

[试题源程序]

include<stdio.h>

define N 8

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], t; FILE *out;

int i, j, n;

double ave;

ave=fun(s, h, &n);

printf("The %d student data which is lower than %7.3 f:\n", n, ave);

for(i=0; i<n; i++)

printf("%s %4.1f\n", h[i]. num, h[i].s);

printf("\n");

ut=fopen("out.dat", "W");

fprintf(out, "%d\n%7.3f\n", n, ave);

for(i=0; 2<n-1; i++)

for(j=i+1; j<n; j++)

if(h[i]. s>h[j].s)

{

t=h[i];

h[i]=h[j];

h[j]=t;

}

for(i=0; 2<n; i++)

fprintf(out, "%4.1f\n", h[i].s);

fclose(out);

}

点击查看答案

第4题

学生记录由学号和成绩组成,N名学生的数据已放入主函数中的结构体数组中,请编写函数fun,其功能是:把分数最低的学生数据放入b所指的数组中,注意:分数最低的学生可能不止一个,函数返回分数最低的学生人数:

注意:部分源程序在文件PROGl.C中。

请勿改动主函数main和其他函数中的任何内容,仅在函数flm的花括号中填入你编写的若干语句。

点击查看答案

第5题

以下程序的功能是:处理由学号和成绩组成的学生记录,N名学生的数据已在主函数中放入结构体数组s中,它的功能是:把分数最高的学生数据放在h所指的数组中,注意:分数高的学生可能不只一个,函数返回分数最高学生的人数。请填空。

#include

#define N 16

typedef struct

{char num[10];

int s ;

} STREC;

int fun (STREC *a, STREC *b)

{int i,j=0,max=a[0].s;

for(i=0;i

if(max

for(i=0;i

if(【20】)b[j++]=a[i];

return j;

}

main ()

{STREC s[N]={{ "GA005",85},{"GA003",76},{"GA002",69},{"GA004",85},

{"GA001",91},{"GA007",72},{"GA008",64},{"GA006",87},

{ "GA015",85},{"GA013",91},{"GA012",64},{"GA014",91},

{"GA011",66},{"GA017",64},{"GA018",64},{"GA016",72}

};

STREC h[N];

int i, n;FILE *out;

n=fun(s,h);

printf("The %d highest score :\n",n);

for (i=0; i

printf("%s M\n ",h[i].num,h[i].s);

printf("\n");

out=fopen("out15.dat", "w");

fprintf(out, "%d\n",n);

for(i=0; i

fprintf(out, "M\n ",h[i].s);

fclose(out);

}

点击查看答案

第6题

以下程序的功能是处理由学号和成绩组成的学生记录,N名学生的数据已在主函数中放入结构体数组s中,程序的功能是把分数最高的学生数据放在h所指的数组中。注意:分数高的学生可能不只一个,函数返回分数最高学生的人数。请填空。#include <stdio.h>#define N 16typedef struct{ char num[10]; int s;} STREC;int fun(STREC *a,STREC *b){ int i,j=0,max=a[0].s; for(i=0;i<N;i++) if(max<a[i].s)max=a[i].s; for(i=0;i<N;i++) if()b[j++]=a[i]; return j;}main(){ STREC s[N]={ {"GA005",85},{"GA003",76},{"GA002",69},{"GA004",85},  {"GA001",91},{"GA007",72},{"GA008",64},{"GA006",87},  {"GA015",85},{"GA013",91},{"GA012",64},{"GA014",91},  {"GA011",66},{"GA017",64},{"GA018",64},{"GA016",72}}; STREC h[N]; int i,n;FILE *out; n=fun(s,h); printf("The %d highest score :\n",n); for(i=0;i<n;i++) printf("%s %4d\n",h[i].num,h[i].s); printf("\n"); out=fopen("out15.dat","w"); fprintf(out, "%d\n",n); for(i=0;i<n;i++); fprintf(out, "%4d\n",h[i].s); fclose(out);}

点击查看答案

第7题

已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定只有一个最低分)。

注意:部分源程序存在文件PROGl.C文件中。

请勿改动主函数main和其他函数中的任何内容,仅在函数fun的莅括号中填入你编写的若干语句。

点击查看答案

第8题

某学生的记录由学号、8门课成绩和平均分组成,学号和 8门课的成绩已在主函数中给出。请编写fun()函数,它的功能是:求出该学生的平均分放在记录的ave成员中。请自己定义正确的形参。

例如,若学生的成绩是85.5,76,69.5,85,91,72,64.5, 87.5,则他的平均分应当是78.875。

注意:部分源程序给出如下。

请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。

试题程序:

include<stdio.h>

define N 8

typedef struct

{ char num [10];

double s[N];

double ave;

} STREC;

void fun()

{

}

main()

{

STREC s={"GA005",85.5,76,69.5,85,91, 72,64.5,87.5);

int i;

fun (&s);

printf("The %s' s student data:\n",s.num)/ /*输出学号*/

for(i=0;i<N; i++)

printf("%4.1f\n", s.s[i]);

/*输出各科成绩*/

printf("\nave=%7.3f\n",s.ave);

/*输出平均分*/

}

点击查看答案

第9题

某学生的记录由学号、8门课程成绩和平均分组成,学号和8门课程的成绩已在主函数中给出,请编写函数fun,其功能是:求出该学生的平均分,并放入记录的ave成员中。

例如,学生的成绩是:85.5,76,69.5,85,91,72,64.5,87.5,则他的平均分应为78.875。注意:部分源程序在文件PROGl.C中。

请勿改动主函数main和其他函数中的任何内容,仅在函数fIm的花括号中填入你编写的若干语句。

点击查看答案

第10题

下列程序的功能是:已知学生的记录由学号和三门学习成绩构成,N名学生的数据已有入 A数组中。找出各科及格的学生中总成绩最高的学生记录(假定最高成绩的记录中唯一的),通过形参返回。

请考生编写函数mmm(STUa[],STU*s)实现程序的要求,最后调用函数readwritedat()把结果输出到文件out.dat中。

例如:

KS01 87 60 88

KS09 97 59 99

KS11 67 67 60

则调用该函数后,输出

the top:KS01,87, 60, 88

include <stdio.h>

include <string.h>

define N 10

void readwritedat ();

typedef struct ss{

char num[10];

int s1, s2, s3;

}STU;

mmm(STU a[],STU *s)

{

}

main ( )

{

STU a[N]={

{ "01", 81, 93, 92},

{ "02", 89, 65, 91},

{ "03", 66, 55, 73},

{ "04", 87, 91, 99},

{ "05", 77, 65, 91},

{ "06", 90, 55, 73},

{ "07", 79, 65, 91},

{ "08", 61, 55, 73},

{ "09", 80, 93, 92},

{ "10", 71, 65, 91}

}m;

int i;

for (i=0; i<N; i++ )

printf ("No=%s Mark=%d\n",a[i] .num, a[i] .s1,a[i] .s2,a[i].s3);

mmm (a, &m);

printf("the highest: %s,%d\n",m.num,m.s1+m.s2+m.s3);

readwritedat ( );

}

void readwritedat ( )

{

FILE *rf, *wf;

STU a[N] ,m;

int i;

rf=fopen ( "in. dat", "r" );

wf=fopen ( "out. dar", "w" );

for (i=0; i<10; i++)

fscanf (rf, "%s%d%d%d", a [i] .hum, &a[i] .s1, &a[i] .s2, &a [i] .s3);

mmm(a, &m);

fprintf(wf,"the top: %s,%d,%d,%d\n",m.num,m.s1,m.s2,m.s3);

fclose (rf);

fclose (wf);

}

点击查看答案
下载上学吧APP
客服
TOP
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
选择优惠券
优惠券
请选择
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

功能 扣减规则
基础费
(查看答案)
加收费
(AI功能)
文字搜题、查看答案 1/每题 0/每次
语音搜题、查看答案 1/每题 2/每次
单题拍照识别、查看答案 1/每题 2/每次
整页拍照识别、查看答案 1/每题 5/每次

备注:网站、APP、小程序均支持文字搜题、查看答案;语音搜题、单题拍照识别、整页拍照识别仅APP、小程序支持。

2. 使用语音搜索、拍照搜索等AI功能需安装APP(或打开微信小程序)。

3. 搜题卡过期将作废,不支持退款,请在有效期内使用完毕。

请使用微信扫码支付(元)
订单号:
遇到问题请联系在线客服
请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

- 微信扫码关注上学吧 -
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反上学吧购买须知被冻结。您可在“上学吧”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
- 微信扫码关注上学吧 -
请用微信扫码测试
选择优惠券
确认选择
谢谢您的反馈

您认为本题答案有误,我们将认真、仔细核查,如果您知道正确答案,欢迎您来纠错

上学吧找答案