主要功能
源码、经验交流QQ群:613879714,有问题QQ群提问,这里不能及时回复
1.管理员模块
- 添加学生
- 修改学生信息
- 查询学生信息
- 删除学生
- 汇总新生
2.学生模块
- 查看状态和注册报到
- 查看和修改个人信息
- 查看宿舍和班级情况
3.演示
C语言-新生入学管理系统
4.源码
#include<stdio.h>
#include<stdlib.h>
#include <conio.h>
#include<string.h>
#define N 30
//学生数据结构体
struct student{
char num[10];//学号
char name[10];//姓名
char sex[10];//性别
char Id[20];//身份证号
char pass[10];//密码
char isbd[10];//报到
char dormitory[10];//宿舍
char cad[15];//班级
};
int sum,Sid=-1;
//从文件读入学生数据
void filew(struct student stu[N]){
FILE *fp;
int i,no=0;
if((fp=fopen("student.txt","r"))==NULL)
{
printf("文件打开失败!\n");
//exit(1);
}
for(i=0;i<N&&!feof(fp);i++)
{
fscanf(fp,"%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\n",
stu[i].num,stu[i].name,stu[i].sex,stu[i].Id,stu[i].pass,stu[i].isbd,stu[i].dormitory,stu[i].cad);
no++;
}
sum=no;
fclose(fp);
/*for(i=0;i<no&&stu[i].num[0];i++)
printf("学号:%s\t姓名:%s\t性别:%s\t省份证号:%s\t密码:%s\t报到:%s\t宿舍:%s\t班级:%s\n",
stu[i].num,stu[i].name,stu[i].sex,stu[i].Id,stu[i].pass,stu[i].isbd,stu[i].dormitory,stu[i].cad);*/
}
//进入系统界面
int in(){
system("cls"); //清屏函数
printf("\t\t\t┌──────────────────────────────┐\n");
printf("\t\t\t│ │\n");
printf("\t\t\t│ 新生入学管理系统 │\n");
printf("\t\t\t│ │\n");
printf("\t\t\t│ 欢迎使用 │\n");
printf("\t\t\t│ │\n");
printf("\t\t\t│ 1.管理员 │\n");
printf("\t\t\t│ │\n");
printf("\t\t\t│ 2.新学生 │\n");
printf("\t\t\t│ │\n");
printf("\t\t\t│ 0.退出 │\n");
printf("\t\t\t│ │\n");
printf("\t\t\t└──────────────────────────────┘\n");
//getch();
int flag;
printf("请选择身份进入系统:");
scanf("%d",&flag);
return flag;
}
//T1.添加学生信息
void Insert(struct student stu[N]){
FILE *fp;
int i,j,k=0;
char name[10];
if((fp=fopen("student.txt","a"))==NULL)
{
printf("文件打开失败!");
exit(1);
}
printf("添加学生人数:");
scanf("%d",&i);
while(j<i){
input:printf("请输入第%d个学生学号:",j+1);
scanf("%s",name);
for(k=0;k<sum+j;k++)
if(strcmp(name,stu[k].num)==0)
{
printf("该学号已存在!\n");
goto input;
}
if(k==sum+j){
strcpy(stu[sum+j].num,name);
strcpy(stu[sum+j].pass,"123456");
strcpy(stu[sum+j].isbd,"未");
printf("请依次按写顺序输入学生信息:\n姓名\t性别\t身份证号\t\t宿舍\t班级\n");
scanf("%s\t%s\t%s\t%s\t%s",
stu[sum+j].name,stu[sum+j].sex,stu[sum+j].Id,stu[sum+j].dormitory,stu[sum+j].cad);
fprintf(fp,"%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\n",
stu[sum+j].num,stu[sum+j].name,stu[sum+j].sex,stu[sum+j].Id,stu[sum+j].pass,stu[sum+j].isbd,stu[sum+j].dormitory,stu[sum+j].cad);
j++;
}
}
sum=sum+i;
fclose(fp);
printf("添加成功,按任意键返回主页面!\n");
getch();
}
//T2.修改学生信息
void Update(struct student stu[N]){
FILE *fp;
char i[10];
int j=0,k,n,m;
input:printf("请输入修改学生信息的学号:");
scanf("%s",&i);
for(k=0;k<sum;k++){
//printf("\n%s\n%s\n",i,stu[k].num);
if(strcmp(stu[k].num,i)==0){
printf("该学生信息如下:\n学号\t姓名\t性别\t身份证号\t\t密码\t报到\t宿舍\t班级\n");
printf("%s\t%s\t%s\t%s\t%s\t%s\t%s\t