首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
N名学生的成绩己在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。请编写函数fun(),它的功能是:求出平均分,由函数值返回。 例如,若学生的成绩是85,76,69,91,72,64,87,则平均分应当是78.625。 注童:部分源程
N名学生的成绩己在主函数中放入一个带头节点的链表结构中,h指向链表的头节点。请编写函数fun(),它的功能是:求出平均分,由函数值返回。 例如,若学生的成绩是85,76,69,91,72,64,87,则平均分应当是78.625。 注童:部分源程
admin
2010-09-14
24
问题
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);
}
选项
答案
double fun(STREC *h) { double av=0.0; STREC *p-h->next; /*p直接指向“头结点”的下一个结点,即第—个成绩*/ while(p!=NULL) {aY=ay+p->s; /*求总分数*/ p=p->next; } return ay/N; /*返回平均值*/ }
解析
本题是关于链表问题,所以,一定要弄清表示出使指针变量p指向下一个“结点”的方法及表示结束的判断,本题中,因为“头结点”中没有数值,所以程序中让p直接指向“头结点”的下一个结点,使用语句STREC*p=h->next,当然也可将p一开始就指向“头结点”。
转载请注明原文地址:https://jikaoti.com/ti/cIkiFFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
阿尔泰国立大学的生物学家研制出转基因成分快速检测仪.可在较短时间内检测出食品中是否含有某种转基因成分。以下对转基因说法错误的是()。
价格机制的核心内容是()。
剧烈运动后,人们常常满脸通红,大汗淋漓,这主要是因为皮肤的()功能。
在当事人没有约定、法律亦无特别规定的情况下,买卖合同中的财产所有权的转移时间是()。
我国是统一的多民族国家,下列关于我国国家结构形式的表述,不正确的是()。
俄国十月革命以前,我国新文化运动的主要内容是()。①提倡民主与科学,反对专制和愚昧②提倡新道德,反对旧道德③提倡马克思主义,反对资产阶级改良主义④提倡新文学,反对旧文学
消化系统是保证人体新陈代谢正常进行的一个重要系统,是由消化管和消化腺两大部分组成,下列器官或腺体不属于消化系统的是()。
某书店出售一种挂历,每售出1本可得18元利润。售出一部分后每本减价10元出售,全部售完。已知减价出售这种挂历本数是原价出售挂历的三分之二。书店售完这种挂历共获得利润2870元,书店一共出售这种挂历多少本?
从1、2、3、4、5、6、7、8、9这几个数字中选择3个数字,使它们的乘积能够被9整除,问共有多少种不同的方法?
将1、2、3、4、5、6、7、8、9九个数排成一行,使得第二个数整除第一个数,第三个数整除前两个数的和,第四个数整除前三个数的和,……,第九个数整除前八个数的和。如果第一个数是6,第四个数是2,第五个数是1。排在最后的数是几?
随机试题
A协同凝集试验B正向间接血凝试验C反向间接血凝试验D正向间接血凝抑制试验E反向间接血凝抑制试验先将可溶性抗原和相应的抗体混合,再加入致敏红细胞的是
二氧化碳法培养细菌时,二氧化碳的浓度一般为
患儿女,2岁。颈部淋巴结肿大伴头晕、乏力2个月。双颈部、腋窝及腹股沟淋巴结均明显肿大,胸骨有压痛,肝肋下1cm,脾肋下3cm,Hb42g/L,WBc18×109/L,血涂片中原始细胞占87%,胞体较小,胞浆未见Auer小体,涂片中有较多退化细胞,本病
要确定面瘫病人是否有膝状神经节受损,应做
麻疹出疹一般在发热后的
折杆受力如图5-57(a)所示,以下结论中错误的是()。
甲、乙股份有限公司(简称甲公司、乙公司)为丙公司控制下的两家子公司。其他有关资料如下:(1)2009年1月1日,甲公司以固定资产、无形资产、可供出售金融资产和交易性金融资产为对价,取得乙公司80%的股权,并于当日办妥有关资产的划转手续。甲公司出资
影响存款经营的因素包括()。
《四库全书》是中国古代最大的文化工程,是对中国古典文化进行的一次最系统、最全面的总结,呈现出了中国古典文化的知识体系。这套丛书是在()年间完成编修的。
下列给定程序中,函数fun的功能是:删除指针p所指字符串中的所有空白字符(包括制表符、回车符及换行符)。输入字符串时用“#”结束输入。请改正程序中的错误,使它能输出正确的结果。注意:不要改动main函数,不得增行或删行,也不得
最新回复
(
0
)