c语言建立n名学生信息登记表,包括学号、姓名、性别及3门课程的成绩,从键盘输入学
时间: 2023-09-16 19:01:55 浏览: 265
用c语言实现的学生成绩管理信息系统
以下是建立n名学生信息登记表的C语言代码:
```c
#include <stdio.h>
struct Student {
int studentId;
char name[50];
char gender;
float scores[3];
};
int main() {
int n; // 学生人数
printf("请输入学生人数:");
scanf("%d", &n);
struct Student students[n];
for (int i = 0; i < n; i++) {
printf("请输入第%d个学生的学号:", i+1);
scanf("%d", &students[i].studentId);
printf("请输入第%d个学生的姓名:", i+1);
scanf("%s", students[i].name);
printf("请输入第%d个学生的性别(M表示男性,F表示女性):", i+1);
scanf(" %c", &students[i].gender);
printf("请依次输入第%d个学生的3门课程成绩:", i+1);
for (int j = 0; j < 3; j++) {
scanf("%f", &students[i].scores[j]);
}
}
// 输出学生信息
for (int i = 0; i < n; i++) {
printf("学号:%d\n", students[i].studentId);
printf("姓名:%s\n", students[i].name);
printf("性别:%c\n", students[i].gender);
printf("成绩:");
for (int j = 0; j < 3; j++) {
printf("%.2f ", students[i].scores[j]);
}
printf("\n\n");
}
return 0;
}
```
这段代码首先要求输入学生人数n,然后根据n的值定义一个存储学生信息的数组`students`。接下来,通过遍历数组,依次输入每个学生的学号、姓名、性别和3门课程的成绩。之后,再次遍历数组,打印出每个学生的学号、姓名、性别和成绩。
请注意,在输入学生性别时,为了避免之前输入的换行符对后续输入造成干扰,在`scanf`函数前添加了一个空格。
此外,这段代码假设输入的学生人数n不会超过数组`students`的长度。
阅读全文