【题目描述】
编写一个函数print,打印一个学生的成绩数组,该数组中有n(n<20)个学生的数据记录,每个记录包括学号num,姓名name,三科成绩score[3],用主函数输入n个学生的数据记录。
【输入说明】
输入第一行表示学生数量n.接下来有n行数据,每行数据包括学号,姓名和三科成绩,分别用空格间隔
【输出说明】
输出包括n行,每行表示一个学生的总成绩
【输入样例】
3
101 张三 65 85 75
105 李四 85 96 74
106 王五 100 95 78
【输出样例】
101-张三:225
105-李四:255
106-王五:273
#include <stdio.h>
struct student
{
int num;
char name[100];
int score[3];
}Stu[20];
void print(struct student stu[], int n);
int main()
{
int n;//人数
scanf("%d", &n);
for (int i = 0; i < n; i++)//n个学生
{
scanf("%d %s", &Stu[i].num, Stu[i].name);
for (int j = 0; j < 3; j++) //3科成绩
{
scanf("%d", &Stu[i].score[j]);
}
}
print(Stu, n);//打印
return(0);
}
void print(struct student stu[], int n)
{
for (int i = 0; i < n; i++)//n个学生
{
int sum = 0;
for (int j = 0; j < 3; j++)//三科成绩总分
{
sum += stu[i].score[j];
}
printf("%d-%s:%d\n", stu[i].num, stu[i].name, sum);
}
}