关闭

学生信息管理系统

196人阅读 评论(0) 收藏 举报
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct student
{
    char code[20];//学号
    char name[32];//姓名
    int age;//年龄
    char sex[3];//性别
    char time[100];//出生日期
    char add[32];//地址
    char phone[30];//电话
    char mail[30];//电子邮箱
}stu[50];
int k=1,n,m;
void read();//录入
void display();//浏览
void seek();//查询
void del();//删除
void mod();//修改
void menu();//主界面
void save();
int main()
{
    system("color 1f");
    while(k)
    menu();
    system("pause");
    return 0;
}
void menu()//主界面
{
    int num;
    printf("------------------\n");
    printf("1.学生信息录入\n");
    printf("2.学生信息浏览\n");
    printf("3.学生信息查询\n");
    printf("4.学生信息删除\n");
    printf("5.学生信息修改\n");
    printf("6.学生信息保存\n");
    printf("------------------\n");
    printf("请输入指令\n");
    scanf("%d ",&num);
    switch(num)
    {
        case 1:read();break;
        case 2:display();break;
        case 3:seek();break;
        case 4:del();break;
        case 5:mod();break;
        case 6:save();break;
        default:printf("请在1~6中选择\n");
    }
}
void read()//录入
{
    char *p="student.txt";
    FILE *fp;
    int i=0;
    if((fp=fopen("student.txt","r"))==NULL)//打开只读文件
    {
        printf("打开文件 %s 失败 ",p);
        system("pause");
        exit(0);
    }
    while(fscanf(fp,"%s %s %d %s %s %s %s %s",
                 stu[i].code,stu[i].name,stu[i].age,stu[i].sex,stu[i].time,stu[i].add,stu[i].phone,stu[i].mail)==8)
    {
        i++;
        i=i;
    }
    fclose(fp);
    n=i;
    printf("录入完成\n");
}
void save()//保存函数
{
    int i;
    FILE *fp;
    fp=fopen("stduent.txt","w");//写入
    for(i=0;i<n;i++)
    {
      fprintf(fp,"%s %s %d %s %s %s %s %s",
                 stu[i].code,stu[i].name,stu[i].age,stu[i].sex,stu[i].time,stu[i].add,stu[i].phone,stu[i].mail);
    }
    fclose(fp);
}
void display()//浏览
{
    int i;
    printf("所有学生的信息为:\n");
    printf("  学号    姓名    年龄    性别  出生日期    地址    电话    邮箱    \n");
    for(i=0;i<n;i++)
    {
        printf("%6s %7s %5d %5s %9s %8s %10s %14s\n",
                 stu[i].code,stu[i].name,stu[i].age,stu[i].sex,stu[i].time,stu[i].add,stu[i].phone,stu[i].mail);
    }
}
void seek()//查询,按学号查询
{
    printf("请输入所要查询的学生学号:\n");
    char s1[30];
    scanf("%s ",s1);
    int i;
    for(i=0;i<n;i++)
    {
        if(strcmp(stu[i].code,s1)==0)
        {
            printf("%6s %7s %5d %5s %9s %8s %10s %14s\n",
                 stu[i].code,stu[i].name,stu[i].age,stu[i].sex,stu[i].time,stu[i].add,stu[i].phone,stu[i].mail);
        }
        else
        {
            printf("该学号不存在\n");
        }
    }
}
void del()//删除
{
    int x,j,f;
    f=0;
    char s2[30];
    printf("请输入所要删除的学生学号\n");
    scanf("%s ",s2);
    for(x=0;x<n;x++)
       if(strcmp(stu[x].code,s2)==0)
    {
        f=1;
        for(j=x;j<50-1;j++)
            stu[j]=stu[j+1];
    }
    if(f==0)
    {
        printf("该学号不存在\n");
    }
    if(f==1)
    {
        printf("删除成功,谢谢使用\n");
    }
}
void mod()//修改
{
    int a,b,c;
    char sex1[3],s3[30],s4[30];
    printf("请输入所要修改的学生学号\n");
    scanf("%s",s3);
    for(a=0;a<n;a++)
       if(strcmp(stu[a].code,s3)==0)
        c=a;
       printf("------------------------\n");
       printf("1.修改姓名\n");
       printf("2.修改年龄\n");
       printf("3.修改性别\n");
       printf("4.修改出生日期\n");
       printf("5.修改地址\n");
       printf("6.修改电话号码\n");
       printf("7.修改E-mail地址\n");
       printf("------------------------\n");
       scanf("%d ",&b);
       if(b==1)
       {
           printf("请输入新的姓名\n");
           scanf("%s ",s4);
           strcpy(stu[c].name,s4);
       }
       else if(b==2)
       {
          printf("请输入新的年龄\n");
          scanf("%d ",&stu[c].age);
       }
       else if(b==3)
       {
           printf("请输入新的性别\n");
           scanf("%s ",sex1);
           strcpy(stu[c].sex,sex1);
       }
       else if(b==4)
       {
           printf("请输入新的出生日期\n");
           scanf("%s ",s4);
           strcpy(stu[c].time,s4);
       }
       else if(b==5)
       {
           printf("请输入新的地址\n");
           scanf("%s ",s4);
           strcpy(stu[c].add,s4);
       }
       else if(b==6)
       {
           printf("请输入新的电话号码\n");
           scanf("%s ",s4);
           strcpy(stu[c].phone,s4);
       }
       else if(b==7)
       {
           printf("请输入新的E-mail地址\n");
           scanf("%s ",s4);
           strcpy(stu[c].mail,s4);
       }
       else
       {
           printf("操作有误,谢谢使用\n");
       }
}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:9484次
    • 积分:647
    • 等级:
    • 排名:千里之外
    • 原创:58篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条