学生证管理系统用c语言写的程序
时间: 2023-11-12 18:05:41 浏览: 109
这里提供一个简单的学生证管理系统的C语言代码示例,仅供参考:
```
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// 定义学生信息结构体
struct Student {
char name[20]; // 姓名
char id[20]; // 学号
char gender[5]; // 性别
int age; // 年龄
char class[20]; // 班级
};
// 定义全局变量,存储学生数据
struct Student students[100];
int studentCount = 0;
// 添加学生信息
void addStudent() {
struct Student student;
printf("请输入学生姓名:");
scanf("%s", student.name);
printf("请输入学生学号:");
scanf("%s", student.id);
printf("请输入学生性别:");
scanf("%s", student.gender);
printf("请输入学生年龄:");
scanf("%d", &student.age);
printf("请输入学生班级:");
scanf("%s", student.class);
students[studentCount] = student;
studentCount++;
printf("添加成功!\n");
}
// 查询学生信息
void queryStudent() {
char id[20];
printf("请输入要查询的学生学号:");
scanf("%s", id);
for (int i = 0; i < studentCount; i++) {
if (strcmp(students[i].id, id) == 0) {
printf("姓名:%s,学号:%s,性别:%s,年龄:%d,班级:%s\n", students[i].name, students[i].id, students[i].gender, students[i].age, students[i].class);
return;
}
}
printf("没有找到对应的学生信息!\n");
}
// 修改学生信息
void updateStudent() {
char id[20];
printf("请输入要修改的学生学号:");
scanf("%s", id);
for (int i = 0; i < studentCount; i++) {
if (strcmp(students[i].id, id) == 0) {
printf("请输入修改后的学生姓名:");
scanf("%s", students[i].name);
printf("请输入修改后的学生性别:");
scanf("%s", students[i].gender);
printf("请输入修改后的学生年龄:");
scanf("%d", &students[i].age);
printf("请输入修改后的学生班级:");
scanf("%s", students[i].class);
printf("修改成功!\n");
return;
}
}
printf("没有找到对应的学生信息!\n");
}
// 删除学生信息
void deleteStudent() {
char id[20];
printf("请输入要删除的学生学号:");
scanf("%s", id);
for (int i = 0; i < studentCount; i++) {
if (strcmp(students[i].id, id) == 0) {
for (int j = i; j < studentCount - 1; j++) {
students[j] = students[j + 1];
}
studentCount--;
printf("删除成功!\n");
return;
}
}
printf("没有找到对应的学生信息!\n");
}
// 显示学生信息
void displayStudents() {
printf("姓名\t学号\t性别\t年龄\t班级\n");
for (int i = 0; i < studentCount; i++) {
printf("%s\t%s\t%s\t%d\t%s\n", students[i].name, students[i].id, students[i].gender, students[i].age, students[i].class);
}
}
// 统计学生信息
void statistics() {
int maleCount = 0, femaleCount = 0, ageSum = 0, classCount = 0;
for (int i = 0; i < studentCount; i++) {
if (strcmp(students[i].gender, "男") == 0) {
maleCount++;
} else {
femaleCount++;
}
ageSum += students[i].age;
int flag = 1;
for (int j = 0; j < i; j++) {
if (strcmp(students[i].class, students[j].class) == 0) {
flag = 0;
break;
}
}
if (flag) {
classCount++;
}
}
float averageAge = (float) ageSum / studentCount;
printf("学生总数:%d,男生人数:%d,女生人数:%d,平均年龄:%.1f,班级数:%d\n", studentCount, maleCount, femaleCount, averageAge, classCount);
}
int main() {
int choice;
while (1) {
printf("请选择操作:\n");
printf("1. 添加学生信息\n");
printf("2. 查询学生信息\n");
printf("3. 修改学生信息\n");
printf("4. 删除学生信息\n");
printf("5. 显示学生信息\n");
printf("6. 统计学生信息\n");
printf("7. 退出系统\n");
scanf("%d", &choice);
switch (choice) {
case 1:
addStudent();
break;
case 2:
queryStudent();
break;
case 3:
updateStudent();
break;
case 4:
deleteStudent();
break;
case 5:
displayStudents();
break;
case 6:
statistics();
break;
case 7:
exit(0);
default:
printf("输入有误,请重新输入!\n");
break;
}
}
return 0;
}
```
这个示例代码实现了学生信息的添加、查询、修改、删除、显示和统计等功能,可以根据实际需求进行修改和扩展。
相关推荐
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)