结构体数组的定义和引用(二)

文章作者 100test 发表时间 2007:03:10 17:46:14
来源 100Test.Com百考试题网


void out_row(arr,n)
int n.
struct stu arr[].
{
float row[4]={0,0,0,0}.
int i,j.
f o r ( i = 0 . i < 4 . i )
{
f o r ( j = 0 . j < n . j )
r o w [ i ] = r o w [ i ] a r r [ j ] . s c o r e [ i ] .
r o w [ i ] = r o w [ i ] / n .
}
printf("|c|", ).
for (i=0.i<4.i )
p r i n t f ( " % 7 . 2 f | " , r o w [ i ] ) .
p r i n t f ( " \ n - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ n " ) .
}


程序中要谨慎处理以数组名作函数的参数。由于数组名作为数组的首地址,在形参和实参结合时,传递给子程序的就是数组的首地址。形参数组的大小最好不定义,以表示与调用函数的数组保持一致。在定义的结构体内,成员score[3]用于表示计算的平均成绩,也是我们
用于排序的依据。我们无法用数组元素进行相互比较,而只能用数组元素的成员score[3]进行比较。在需要交换的时候,用数组元素的整体包括姓名、学号、三科成绩及平均成绩进行交换。在程序order()函数中,比较采用:arr[j].score[3]>arr[j 1].score[3],而交换则采用:
arr[j]arr[j 1]


相关文章


结构体类型变量的定义和引用(一)
结构体类型变量的定义和引用(二)
结构体数组的定义和引用(二)
结构体数组的定义和引用(一)
结构体指针的定义和引用
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛