首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C函数,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某班级有N名学生,他们可根据自己的情况选修名称和数量不尽相同的课程。设N等于6,学生信息、所选课程及成绩用链表结构存储,如图2-5所示。 程序中相应的类型定义如下:
阅读以下说明和C函数,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某班级有N名学生,他们可根据自己的情况选修名称和数量不尽相同的课程。设N等于6,学生信息、所选课程及成绩用链表结构存储,如图2-5所示。 程序中相应的类型定义如下:
admin
2008-05-15
81
问题
阅读以下说明和C函数,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
某班级有N名学生,他们可根据自己的情况选修名称和数量不尽相同的课程。设N等于6,学生信息、所选课程及成绩用链表结构存储,如图2-5所示。
程序中相应的类型定义如下:
#define N 6
struct node{
char cname[5]; /*课程名*/
int grade; /*成绩*/
struct node *next; /*指针,指示某学生选修的下一门课程及成绩*/
};
struct student{
char xh[5]; /*学号*/
char name[20]; /*姓名*/
struct node*link; /*指针,指示出选修的课程及成绩链表*/
}stud_info[N];
图2-5
smd_mb[]为一个全局数组。
函数func(char kc[],int*num)的功能是统计选修了课程名为kc的学生的人数,并返回该课程的平均成绩(若无人选修该课程,则平均成绩为0),参数num带回选修课程比的学生人数。
【C函数】
double func(char kc[],int*num)
{
int i,count=0,sum=0; /*count用于记录选修课程名为kc的学生的人数*/
double avg=0.0;
struct node *p;
for(i=0;i<N;i++){
p=(1); /*取第i个学生所修课程链表的头指针*/
while (p) {
if((2)){
sum=(3);
count++;
break;;
}/*if*/
p=p->next;
}/*while*/
}
(4);
if((5))
avg=(double)sum/count; /*计算平均成绩*/
return avg;
}/*func*/
选项
答案
(1)stud_info[i].link,或其等价形式 (2)!strcmp(p->cname,kc),或其等价形式 (3)sum+p->grade,或其等价形式 (4)*num=count,或其等价形式 (5)count!=0,或count>0,或其等价形式
解析
本题考查链表的查找运算。
函数time(char kc[],int*num)的功能是统计选修了课程名为kc的学生的人数,并返回该课程的平均成绩(若无人选修该课程,则平均成绩为0),参数num返回选修课程 kc的学生人数。
函数中用count计算选修课程kc的人数、用sum记录学生该课程的成绩总和<除以学生人数即可得到平均成绩)。
stud_info[]为一个全局数组,stud_info[0]是第0个学生的信息,stud_info[1]是第1个学生的信息,依次类推。
对于每个学生,用一个单链表存储其选修的课程及成绩,链表的头指针为smd info
link,显然,应遍历为每个学生建立的单链表。空(1)处应填入“stud info
.link”。
对于链表中的一个结点,应查看其课程名是否等于给定的课程名kc,若相等,则将其成绩累加至sum。因此空(2)处应填入“!strcmp(p->cname,kc)”,空(3)处应填入“sum+p->grade"。
由于需要参数*num返回选修课程比的人数,所以空(4)处应填入“*num=count”。
平均成绩等于成绩总和除以选课人数,因此,选课人数应不等于0,所以空(5)处填入“count>0”或“count!=0”。
转载请注明原文地址:https://kaotiyun.com/show/XsjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
在PowerPoint 2000中,如果要更改幻灯片上对象出现的顺序,应设置“自定义动画”中的(62)。
在Excel中,将A1单元格的格式设置为数值,小数位数为2,然后在此单元格输入数值65.2568,按回车后,单元格显示的内容是(59)。
Access数据库属于()。
在Excel2007中,设单元格A1中的值为-1,B1中的值为1,A2中的值为0,B2中的值为1,若在C1单元格中输入函数“=IF(AND(A1>0,B1>0),A2,B2)”,按回车键后,C1单元格中的值为______。
在Word2007文档编辑时,使用(39)________________选项卡中的“分隔符”命令,可以在文档中指定位置强行分页。
(31)________________接受每个用户的命令,采用时间片轮转方式处理服务请求,并通过交互方式在终端上向用户显示结果。
在Excel2010的A1单元格中输入函数“=ABS(ROUND(-1.478,2))”,按回车键后,A1单元格中的值为________________。
以下关于数字经济的叙述中,________________并不正确。
在Excel2010的A1单元格中输入函数“=IF(1<>2,1,2)”,按回车键后,A1单元格中的值为________________。
随机试题
目前,PLC按结构形式可分为整体式和()两种。
下列细胞因子中对造血细胞起负向调控作用的是
关于部分土地所有权的确定,下列说法正确的是()。
项目主要负责人必须接受当地政府或上级主管部门组织的职业健康安全生产专项培训,考试合格后,取得()后方可上岗。
国内生产总值有三种表现形态,即()。
某存款货币银行为客户办理资金收付业务,客户为此支付了1万元手续费。这种业务属于存款货币银行的()。
班主任工作的中心任务是()。
根据法律规定,以下属于行政裁决的是()。
理论联系实际,是实事求是思想路线的()。
适当选取函数φ(x),作变量代换y=φ(x)u,将y关于x的微分方程化为u关于x的二阶常系数线性齐次微分方程,求φ(x)及λ并求原方程的通解.
最新回复
(
0
)