4. 有一组学生成绩如下:
学号
计算机语言C
英语
高等数学
1
70
65
81
2
82
90
87
3
61
55
73
4
77
88
91
5
95
92
89
编写程序,输出每个人的平均分和各科平均分。(考虑使用一维数组和二维数组)
#include <stdio.h>
typedef struct student_score
{
int number;
int x;
int y;
int z;
float ave;
} student;
void main()
{
student a[5];
float ave1,ave2,ave3;
int i,sum1=0,sum2=0,sum3=0;
for(i=0;i<5;i++)
{
printf("请输入第%d个学生的学号和三科目成绩。\n", i+1 );
scanf("%d",&a[i].number);
scanf("%d",&a[i].x);
scanf("%d",&a[i].y);
scanf("%d",&a[i].z);
}
for(i=0;i<5;i++)
{
a[i].ave=(float)((a[i].x+a[i].y+a[i].z)/3.0);
printf("学号%d的平均分为%f\n",a[i].number,a[i].ave);
}
for(i=0;i<5;i++)
{
sum1+=a[i].x;
sum2+=a[i].y;
sum3+=a[i].z;
}
ave1 = (float)sum1/5.0;
ave2 = (float)sum2/5.0;
ave3 = (float)sum3/5.0;
printf("计算机语言C平均分为%f\n",ave1);
printf("英语平均分为%f\n",ave2);
printf("高等数学平均分为%f\n",ave3);
}
vc6.0下调试通过。