c语言 从键盘输入某班级学生信息包括学号、性别、成绩,以0 N 0作为结束标志
时间: 2024-09-22 07:07:25 浏览: 58
学生信息管理系统, 实现学生信息包括:学号、姓名、性别、年龄、班级等信息
5星 · 资源好评率100%
在 C 语言中,你可以使用标准库函数如 `scanf` 和 `getchar` 来获取用户从键盘输入的数据。下面是一个简单的示例程序,用于获取班级学生的学号、性别和成绩,直到用户输入特定的结束标志(例如三个零):
```c
#include <stdio.h>
#define MAX_STUDENTS 100 // 定义最大学生数
// 结构体定义学生的信息
typedef struct {
int student_id;
char gender[2]; // 男性 'M', 女性 'F'
float score;
} Student;
int main() {
Student students[MAX_STUDENTS];
int i = 0, flag = 0; // 学生计数器和结束标志
printf("请输入学生信息(按0 N 0结束): \n");
while (i < MAX_STUDENTS && getchar() != '\n' && flag == 0) { // 循环读取直到遇到换行符或三个0
printf("学号: ");
scanf("%d", &students[i].student_id);
printf("性别(M/F): ");
scanf(" %c", students[i].gender); // 需要空格防止直接输入数字
printf("成绩: ");
scanf("%f", &students[i].score);
if (students[i].student_id == 0 && students[i].gender[0] == '0' && students[i].score == 0) {
flag = 1; // 如果都为0,则表示结束标志
} else {
++i; // 如果不是结束标志,增加学生计数
}
}
if (flag) {
printf("\n输入结束。\n");
} else {
printf("超过最大学生数限制,输入未完成。\n");
}
return 0;
}
```
在这个程序中,用户会依次输入每个学生的数据,当输入全部为0时,循环停止,显示结束信息。
阅读全文