| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 595 人关注过本帖
标题:简单的学生管理系统
只看楼主 加入收藏
startuser
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-6-17
收藏
 问题点数:0 回复次数:0 
简单的学生管理系统
大家帮帮看下```本人还是菜鸟级的```

#include "stdio.h"
#include "stdlib.h"

typedef struct{
        char name[20];
        int age;
        int cj[5];
        }elem;
typedef struct{
        elem *e;
        int len;
        int listsize;
        }list;

int main()
{
    list l;
    int k;
    void inset(list *l);
    void looklist(list *l);
    void updata(list *l);
    void dellist(list *l);
    void savelist(list *l);

    l.len=0;
    l.listsize=0;
    while(k)
    {
    system("cls");
    printf("\t\t\t学 生 管 理 系 统\n\n\n");
    printf("\t.............1. 增 加 学 生 记 录.............\n");
    printf("\t.............2. 修 改 学 生 记 录.............\n");
    printf("\t.............3. 删 除 学 生 记 录.............\n");
    printf("\t.............4. 查 看 学 生 记 录.............\n");
    printf("\t.............5. 保 存 学 生 记 录.............\n");
    printf("\t.............0. 退 出            .............\n\n\n");  
    printf("\t请输入你须要的功能:");
    scanf("%d",&k);
    while(k<0 || k>5)
    {
     printf("无效按键,,,按任意键重新输入");getch();
     system("cls");
     printf("\t\t\t学 生 管 理 系 统\n\n\n");
     printf("\t.............1. 增 加 学 生 记 录.............\n");
     printf("\t.............2. 修 改 学 生 记 录.............\n");
     printf("\t.............3. 删 除 学 生 记 录.............\n");
     printf("\t.............4. 查 看 学 生 记 录.............\n");
     printf("\t.............5. 保 存 学 生 记 录.............\n");
     printf("\t.............0. 退 出            .............\n\n\n");  
     printf("\t请输入你须要的功能:");
     scanf("%d",&k);
     }
    switch(k){
      case 1:inset(&l);break;
      case 2:updata(&l);break;
      case 3:dellist(&l);break;
      case 4:looklist(&l);break;
      case 5:savelist(&l);break;
      case 0:return 0;
      }
      }
}
void inset(list *l)
{
     elem el,*p;
     char c;
     int i=1;
     
     system("cls");
     l->e=(elem *)malloc(100*sizeof(elem));
     l->len=0;
     l->listsize=0;
     p=l->e;
     while(c!=27)
     {
       system("cls");
       printf("\t\t\t\t增加学生记录\n\n");
       printf("姓名:");scanf("%s",el.name);printf("\n");
       printf("年龄:");scanf("%d",&el.age);printf("\n");
       printf("成绩_语文:");scanf("%d",&el.cj[1]);printf("\n");
       printf("成绩_数学:");scanf("%d",&el.cj[2]);printf("\n");
       printf("成绩_英语:");scanf("%d",&el.cj[3]);printf("\n");
       *p=el;
       l->listsize+=1;
       p++;
       printf("按任意键继续````ESC返回主程序\n");
       c=getch();
       }
}
void looklist(list *l)
{
     elem *p;
     int i;
     
     system("cls");
     printf("\t\t\t\t查看学生成绩表\n\n\n");
     p=l->e;
     printf("姓名\t年龄\t成绩_语文\t成绩_数学\t成绩_英语\n\n");
     for(i=1;i<=l->listsize;p++,i++)
        printf("%d:%s\t%d\t   %d\t\t   %d\t\t   %d\n",i,p->name,p->age,p->cj[1],p->cj[2],p->cj[3]);
     printf("\n\n");
     system("pause");
}
void updata(list *l)
{
     elem el,*p;
     int i;
     char c;
     
     while(c!=27){
     system("cls");
     printf("请输入要修改的序号:");
     scanf("%d",&i);
     p=l->e;
     p=p+i-1;
     printf("姓名\t年龄\t成绩_语文\t成绩_数学\t成绩_英语\n\n");
     printf("\n%d:%s\t%d\t   %d\t\t   %d\t\t   %d\n",i,p->name,p->age,p->cj[1],p->cj[2],p->cj[3]);
     printf("输入新的信息\n");
     printf("姓名:");scanf("%s",el.name);printf("\n");
     printf("年龄:");scanf("%d",&el.age);printf("\n");
     printf("成绩_语文:");scanf("%d",&el.cj[1]);printf("\n");
     printf("成绩_数学:");scanf("%d",&el.cj[2]);printf("\n");
     printf("成绩_英语:");scanf("%d",&el.cj[3]);printf("\n");      
     *p=el;
     printf("修改成功```按任意键继续,ESC返回");
     c=getch();
     }
}
void dellist(list *l)
{
     elem *p,*q;
     int i,d;
     char c;
     char ch;
     
     while(c!=27)
     {
       system("cls");
       printf("请输入要删除的序号:");
       scanf("%d",&i);
       p=l->e;
       p=p+i-1;
       printf("姓名\t年龄\t成绩_语文\t成绩_数学\t成绩_英语\n\n");
       printf("\n%d:%s\t%d\t   %d\t\t   %d\t\t   %d\n",i,p->name,p->age,p->cj[1],p->cj[2],p->cj[3]);
       for(;i-1<l->listsize;p++,i++)
         *p=*(p+1);
        l->listsize-=1;
        printf("删除成功   按任意键继续,ESC返回");
       c=getch();
       }
}
void savelist(list *l)
{
     FILE *fp;
     elem *p;
     int i;
     
     if((fp=fopen("stat.txt","wt+"))==NULL)
     {
        exit(0);
        printf("error");
        }
     p=l->e;
     for(i=l->len;i<l->listsize;i++,p++)
       fprintf(fp,"%d:%s\t%d\t%d\t%d\t%d\n",i+1,p->name,p->age,p->cj[1],p->cj[2],p->cj[3]);
     printf("保存成功");
     fclose(fp);
}

[[it] 本帖最后由 startuser 于 2008-9-29 10:35 编辑 [/it]]
搜索更多相关主题的帖子: 系统 学生 管理 
2008-09-29 10:32
快速回复:简单的学生管理系统
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.073214 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved