用结构体输入学生成绩
时间: 2023-12-10 16:37:44 浏览: 50
可以定义一个名为`Student`的结构体,包含学生的姓名和成绩两个字段。然后通过输入函数依次输入每个学生的信息,最后将所有学生的信息存储在一个数组中。
以下是示例代码:
```c
#include <stdio.h>
#define MAX_STUDENTS 100
typedef struct {
char name[50];
float score;
} Student;
int main() {
int n;
Student students[MAX_STUDENTS];
printf("请输入学生人数:");
scanf("%d", &n);
// 输入每个学生的信息
for (int i = 0; i < n; i++) {
printf("请输入第 %d 个学生的姓名:", i+1);
scanf("%s", students[i].name);
printf("请输入第 %d 个学生的成绩:", i+1);
scanf("%f", &students[i].score);
}
// 输出所有学生的信息
printf("所有学生的信息如下:\n");
for (int i = 0; i < n; i++) {
printf("姓名:%s\t成绩:%.2f\n", students[i].name, students[i].score);
}
return 0;
}
```
注意,在输入学生的姓名时需要使用`%s`格式化字符串,而在输入成绩时需要使用`%f`格式化浮点数。同时,输出成绩时使用了`%.2f`表示保留两位小数。