C语言编写一个函数print,打印一个学生的成绩数组,该数组中有5个学生的数据记录,每个记录包括num,name,score[3],用主函数输入这些记录,用print函数输出这些记录。
时间: 2024-02-13 08:05:09 浏览: 73
可以参考下面的代码实现:
```c
#include <stdio.h>
struct Student {
int num;
char name[20];
int score[3];
};
void print(struct Student stu[], int n)
{
printf("学号\t姓名\t成绩1\t成绩2\t成绩3\n");
for (int i = 0; i < n; i++) {
printf("%d\t%s\t%d\t%d\t%d\n", stu[i].num, stu[i].name, stu[i].score[0], stu[i].score[1], stu[i].score[2]);
}
}
int main()
{
struct Student stu[5];
for (int i = 0; i < 5; i++) {
printf("请输入第%d个学生的学号、姓名和成绩:\n", i + 1);
scanf("%d %s %d %d %d", &stu[i].num, stu[i].name, &stu[i].score[0], &stu[i].score[1], &stu[i].score[2]);
}
print(stu, 5);
return 0;
}
```
在主函数中定义了一个包含5个学生记录的结构体数组,通过循环输入每个学生的学号、姓名和成绩,然后调用print函数输出这些记录。print函数中首先输出表头,然后循环输出每个学生的信息。注意,在输出学生姓名时,使用%s格式化字符串。
阅读全文