题目详情
当前位置:首页 > 职业培训考试
题目详情:
发布时间:2023-10-22 00:36:03

[简答题]N名学生的成绩己在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。请编写函数fun( ),它的功能是:求出平均分,由函数值返回。 例如,若学生的成绩是85,76,69,91,72,64,87,则平均分应当是78.625。 注童:部分源程序给出如下. 请勿改动主函数main和其他函数中的任何内容,仅在函数6m的花括号中填入所编写的若干语句。 试题程序: #include<stdlib.h> #include<stdio. h> #define N 8 struct slist { double s; struct slist *next; }; typedef struct slist STREC; double fun(STREC *h) { } STREC *creat(double *s) /*创建链表*/ { STREC *h,*p, *q; int i=0; h=p= ( STREC*)malloc (sizeof (STREC)); p->s=0; while (i<N) {q= ( STREC*)malloc (sizeof (STREC)); q->s=s Ii]; i++;p->next=q;p=q; } p->next=0; return h; } outlist (STREC *h) { STREC *p; p=h->next; printf ("head "); do {printf ("->%4. if ",p->s); p=p->next; /*输出各成绩*/ } while (p !=0) } main ( ) { double s [N] ={ 85,76, 69, 85, 91,72, 64, 87},ave; STREC *h; h=creat (s); outlist (h); ave=fun (h); printf ("ave=%6.3f/n ", ave); }

更多"N名学生的成绩己在主函数中放入一个带头节点的链表结构中,h指向链表的头"的相关试题:

[简答题]N名学生的成绩已在主函数中放入一个带头结点的链表结构中,h指向链表的头结点。请编写函数fun,其功能是:求出平均分,并由函数值返回。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序
#include <stdlib.h>
#include <stdio.h>
#define N 8
struct slist

double s;
struct slist * next;
;
typedef struct slist STREC;
double fun(STREC * h)



STREC * creat (double * s) /*创建链表* /

STREC * h, * p, * q;
int i=0;
h=p=(STREC*) malloc (sizeof
(STREC));
p->s=0;
while (i<N)

q=(STREC *)malloc (sizeof
(STREC));
q->s=s[i]; i++; p->next=q; p=q;

p->next=0;
return h;

outlist (STREC * h)

STREC * p;
p=h->next;
printf ("head ");
do

printf("->% 4.1f ", p->s);
p=p->next; /*输出成绩* /
while (p !=NULL);
printf ("/n/n");

void main ( )

double s[N]=85, 76, 69, 85, 91, 72, 64, 87 , ave;
STREC
[简答题]N名学生的成绩已在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。请编写函数fun( ),它的功能是:找出学生的最低分,由函数值返回。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include <stdio.h>
#include <stdlib.h>
#define N 8
struct slist
double s;
struct slist *next;

tyPedef struct slist STREC;
double fun(STREC *h)

STREC * Creat (double *s)

STREC *h,*p,*q;
int i=0;
h=p=STREC*)malloc(sizeof(STREC));
p->S=0;
while(i<N)
/*产生8个节点的链表,各分数存入链表中*/
q=(STREC*) malloc(sizeOf(STREC));
p->S=S[i]; i++; p->next=q; p=q;

p->next=NULL;
return h;
/*返回链表的首地址*/

outlist(STREC *h)

STREC *p;
p=h;
printf("head");
do
printf("->%2.of ",p->s);p=p->next;
/*输/出各分数*/
while(p!=NULL);
printf("/n/n ");

main( )

double s[N]=56,89,76,95,91,68,75,
85,min;
STREC *h;
h=creat(s);
outl
[简答题]在主函数中已将N名学生的成绩放入一个带头结点的链表结构中,h指向链表的头结点。请编写函数fun,它的功能是:求出平均分,由函数值返回。
例如,若学生的成绩是:85,76,69,85,91,72,64,87,则平均分应当是:78.625。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
文件PROG1.C内容如下:
#include<stdio.h>
#include<stdlib.h>
#define N 8
struct slist
double s ;
struct stist * next;
;
typedef struct slist STREC;
double fun(STREC * h )
STREC * creat( double * s)
STREC * h, * p, * q;
int i=0;
h = p = (STREC * ) malloe (sizeof( STREC ));
p->s=0;
while(i<N)
q=(STREC * ) malloe ( sizeof( STREC ) ) ;
q->s=s[i] ;
i++;
p->next = q ;
p=q;
p->next = 0 ;
return h ;
void outlist (STREC * h)
STREC * p ;
p = h->next ;
prinff( " head" ) ;
do
prinff( " ->% 4.1f" , p->s) ;
p=p->next;
while(p! =0);
printf(" /n/n" ) ;
void main( )
double s[N]=85,76,69,85,91,72,64,87,ave;
STREC * h ;
h=creat( s
[简答题]M名学生的成绩已在主函数中放入一个带头结点的链表结构中,h指向链表的头结点。请编写函数proc( ),它的功能是:找出学生的最高分,由函数值返回。
注意:部分源程序已给出。
请勿改动主函数main和其他函数中的任何内容。
试题程序:
#include<stdio.h>
#include<stdlib.h>
#define M 8
struet slist
double s;
struct slist * next;
;
typedef struct slist STREC;
double proc(STREC * h)


STREC*treat(double*s)

STREC *h, *p, *q;
int i=0;
h=p=(STREC*)malloc(sizeof(STREC));
p->s=0;
while(i<M)
/产生8个结点的链表,各分数存入链表中
q=(STREC*)malloc(sizeof(STREC));
p->s=se[i]; i++; p->next=q; p=q;

p->next=NULL;
return h; //返回链表的首地址

void outlist(STREC*h)

STREC *p;
p=h;
printf("head");
do

printf("->%2.Of", p->s); p=p->next;
//输出各分数
while(p->next! =NULL);
printf("n/n");

void main( )

double stu[M]=60, 70, 80, 90, 65, 75, 85, 95,
max;
STREC *h;
h=creat(stu);
outlist(h);
max=proc(h);
printf
[简答题]N名学生的成绩已在主函数中放人一个带头结点的链表结构中,h指向链表的头结点。请编写函数fun,其功能是:求出平均分,并由函数值返回。
例如,若学生的成绩是:85,76,69,85,9l,72,64,87,则平均分应当是:78625。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若千语句。
试题程序:
#include<stdlib.h>
#include<stdio.h>
#define N 8
struct slist

double s;
struct slist*next;
;
typedef struct slist STREC;
double fun(STREC*h)


STREC*creat(double*s) /*创建链表*/

STREC*h,*p,*q;
int i=0;
h=P=(STREC*)mallocsizeof(STREC));
P->s=0;
whilel(i<N)

q=(STREC*)mallodsizeof(STREC));
q->s=s[i];i++lp->next=q;P=q;

p->next=0;
return h;

ouclist(STREC*h)

STREC*p;
P=h->next;
printf("head");
do

printf("->%4.1f",p->s);
P=P->next;/*输出各成绩*/
while(p!=NULL);
printf("/n/n");

void main( )

double s[N]=85,76,69,85,91,72,64,87,ave;
STREC*h;
h=creat(s);outlist(h);
ave=fun(h);

[简答题]学生的记录由学号和成绩组成,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"); out=fopen("out45.dat", "w"); fprintf(out, "%d/n",n); for(i=0; i<n; i++) fprintf(out, "%4d/n ",h[i].s); fclose(out); }
[简答题]学生的记录由学号和成绩组成,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",82},{"GA003",75}, {"GA002",85},{"GA004",78},{"GA001",95}, {"GA007",62},{"GA008",60},{"GA006",85}, {"GA015",83},{"GA013",94},{"GA012",78}, {"GA014",97},{"GA011",60},{"GA017",65}, {"GA018",60},{"GA016",74}}; STREC h[N]; int i,n; FILE *out; n=fun(s,h); printf("The %d lowest score:/n",n); for (i=0;i<n;i++) printf("%s %4d/n",h[i].mum,h[i].s); /*输出最低分学生的学号和成绩*/ printf("/n"); out=fopen("out19.dat","w"); fprintf(out,"%d/n",n); for(i=0;i<n;i++); fprintf(out,"%4d/n",h[i].s); fclose(out); }
[简答题]学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把高于等于平均分的学生数据放在b所指的数组中,高于等于平均分的学生人数通过形参n传回,平均分通过函数值返回。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
文件PROG1.C内容如下:
#include<stdio.h>
#define N 12
typedef struet
char Hum[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,
"GA09",60, "GA11",79,"GA12",73,"GA10",90;
STREC h[N],t;
FILE *out;
int i,j,n;
double ave;
ave=fun(s,h,&n);
printtf("The%d student data which is higher than%7.3f: /n",n,ave);
for(i=0;i<n;i++)printf("%s%4.1f/n",h[i].num,h[i].s);
printf("/n");
out=fopen("out.dat","w");
fprintf(out,"%d/n%7.3f/n",n,ave);
for(i=0;i<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;i<n;i++)fprintf(out,"%4.1f/n",h[i].s);
fcl
[简答题]学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun( ),它的功能是:把指定分数范围之外的学生数据放在b所指的数组中,分数范围之外的学生人数由函数值返回。
例如,输入的分数是80和89,则应当把分数低于80和高于89的学生数据进行输出,不包含80分和89分的学生数据。主函数中把80放在low中,把89放在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",55,"GA003",96,
"GA002",80,"GA004",68,"GA001",88,
"GA007",74,"GA008",85,"GA006",99,
"GA015",90,"GA013",53,"GA012",66,
"GA014",82,"GA0ll",73,"GA017",69,
"GA018",64,"GA016",86;
STEC 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 out%d--%d:/n",low,heigh);

[简答题]学生的记录由学号和成绩组成,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},{"GA11",54},{"GA12",56}, {"GA10",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"); out=fopen("out26.d

我来回答:

购买搜题卡查看答案
[会员特权] 开通VIP, 查看 全部题目答案
[会员特权] 享免全部广告特权
推荐91天
¥36.8
¥80元
31天
¥20.8
¥40元
365天
¥88.8
¥188元
请选择支付方式
  • 微信支付
  • 支付宝支付
点击支付即表示同意并接受了《购买须知》
立即支付 系统将自动为您注册账号
请使用微信扫码支付

订单号:

请不要关闭本页面,支付完成后请点击【支付完成】按钮
恭喜您,购买搜题卡成功
重要提示:请拍照或截图保存账号密码!
我要搜题网官网:https://www.woyaosouti.com
我已记住账号密码