PAGE
PAGE # / 46
PAGE
PAGE # / 46
第八章 以下叙述中正确的是() 若有以下语句
S
{ g; h; } T;
可用T定义结构体变量
是 S 类型的变量
C.可用S定义结构体变量
是类型的变量
当定义一个结构体变量时,系统分配给它的内存是( )
结构体中最后一个成员所需内存量
成员中占内存量最大的容量
结构体中第一个成员所需内存量
各成员所需内存量的总和
若有以下定义:
{
},*p,*q;
且变量a和b之间已有如下图所示的链表结构,若指针 p指向 a,指针q指向c。
则能把c插入到a和b之间形成新的链表的语句是(
>>>;
>;>;
/*N名学生的成绩已在主函数中放入一个带头节点的链表结构中 指向链表的头节点。
请编写函数,它的功能是:求出平均分,由函数值返回。
例如,若学生的成绩是85,76,69,91,72,64,87,则平均分应当是
78.625。
注意:部分源程序给出如下。
请勿改动函数和其他函数中的任何内容,仅在函数的花括号中填 入所编写的若干语句。
试题程序:*/
<>
<>
N 8
{ s;
*?
};
( *h)
{
**********************
/*************************/
}
*( *s) /* 创建链表 */
{
*h,*p,*q;
0;
( *)(());
>0;
(i
{( *)(());
>[i]>;
}
>0;
PAGE
PAGE # / 46
h;
}
( *h)
{
*p;
>;
);
{("->%4.1f ">s);
>; /* 输出各成绩 */
}
();
("\n\n");
}
()
{
*;
J
s[N]{85,76,69,85,91,72,64,87}; *h;
(s);
(h);
(h);
("6.3f\n ");
**************************
**************************
("\\25","w");
(,"%6.3f\n");
();
*************************
*************************
}
【参考代码】
0.0;
*>;
/*p 直接指向 "头节点"的下一个节点 , 即第一个成绩 */
()
{>s; /* 求总分数 */
>;
}
; /* 返回平均值 */ /* 学生的记录由学号和成绩组成名学生的数据已在主函数中放
入结构体数组s中,请编写函数,该函数的功能是:
把高于等于平均分的学生数据放在 b所指的数组中,高于等于平 均分的学生人数通过形参n传回,平均分通过函数值返回。
注意:部分源程序给出如下。
请勿改动函数和其他函数中的任何内容 , 仅在函数的花括号中填
5 / 46
入所编写的若干语句 试题程序 : */
<>
# N 12
{ [10];
s;
} ;
( * *b, *n)
{*********************
{
*********************
/**************************/
/**************************/
}
()
{
*;
J
s[N]={{"05",85},{"03",76},{"02",69},{"04",85},
{"01",91},{"07",72},{"08",64},{"06",87},
{"09",60},{"11",79},{"12",73},{"10",90}}; h[N];
PAGE
PAGE # / 46
PAGE
PAGE # / 46
();
(" %7.3f:\n");
(0; i
(" %4.1f\n"[i][i]);
("\n");
(0; i<1; )
(1
分数从高到低排列 */
分数从高到低排列 */
{[i][i][j][j];} /*
/****************************
("\\29","w");
(, " %7.3f\n");
(0; i
(, " %4.1f\n"[i][i]);
();
/****************************
}
【参考代码】
i;
0.0;
*0;
(0
[i];
J
/* 求平均值 */
(0
(
{ b[*n][i];**1;}
/*将高于等于平均分的学生存入b所指存储单元中,并统计
人数 */
/* 返回平均分 */
/* 学生的记录由学号和成绩组成名学生的数据已在主函数中放
入结构体数组s中,请编写函数,
它的功能是:把指定分数范围内的学生数据放在 b所指的数组中 分数范围内的学生人数由函数值