C语言课程设计(2)-新生入学管理系统

主要功能

源码、经验交流QQ群:613879714,有问题QQ群提问,这里不能及时回复

1.管理员模块
  • 添加学生
  • 修改学生信息
  • 查询学生信息
  • 删除学生
  • 汇总新生
2.学生模块
  • 查看状态和注册报到
  • 查看和修改个人信息
  • 查看宿舍和班级情况
3.演示

B站演示视频链接

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
  • 21
    点赞
  • 210
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值