1、C语言课程设计报告教务管理系统功能说明:实现两种权限的身份登陆的教务管理系统*/#include stdio.h#include stdlib.h#include string.h#include time.h#include memory.h#define share d:share.dat /定义邮件地址#define manager d:manager.dat /定义管理员邮件地址#define outmsg d:outmsg.dat /定义公告邮件地址#define logtimemsg d:used login time.dat /定义用户登录时间信息#define star_stu
2、 d:stu_scname.dat /定义学生起始文件信息#define stu_msg d:stu.dat /定义学生成绩信息地址 #define mass_key 58 /定义文件头部密码typedef struct student stu;#define sc_num 4 /只设定4门科目,不允许改动#define uint unsigned int/*学生成绩管理系统结构*/struct student char num10; /*学生学号*/ char name10; /*学生姓名*/ uint scoresc_num; /*科目分数*/ uint average; /*科目平均分*
3、/ stu *next; st; char gettemp=0;/*管理员身份识别结构*/typedef struct username user;struct username char username20;/ char password20;use;/*时间登录信息*/struct Logtime char userlogin20; struct tm;char logc;/登录次数typedef struct Logtime logtime;/=/定义通讯协议/=#define mass_max 200 /定义信息量struct Massage int cont; /文件数量 char
4、 username15; /发送人 char massmass_max;/信息mas;typedef struct Massage massage; /=/=char userlogin10;char sc_namesc_num10;/*以上是学生信息*/char welcome(void);/*用户界面,返回0,则表示退出系统*/*=学生信息操作=*/stu*creat();/*建立链表*/void display(stu *head);/*显示用户信息*/void insert(stu *head);/*增加学生信息*/stu* delname(stu*head,char *stu_nam
5、e);/*根据学生姓名删除用户信息*/stu* delnum(stu *head,char *stu_num);/*根据学生学号删除用户信息*/stu* checkname(stu *head,char *stu_name);/*输出指定学生的信息*/stu* checknum(stu *head,char *stu_num);/*输出指定学生学号的学生信息*/void changsc_name(stu *head,char *name);/*修改用户成绩*/void changsc_num(stu *head,char *num);/*修改用户成绩*/void waring(void);/*
6、产生警告信息*/char cheknum(char *num);/*检查学生学号是否符合格式*/char chekname(char *name);/*检查学生姓名是否符合格式*/char chekscore(char score);/*检查学生分数是否符合格式*/stu* sortscore(stu *head);/*学生按平均成绩排序*/stu* sortnum(stu *head);/*学生信息按学号排序*/*=学生用户登录=*/char stulogin(void);/*进入普通用户登录界面*/char stucheck(char *nam,char *stnum);/*查找是否存在该
7、学生信息*/char newlogin(char *nam,char *stnum);/*注册学生信息*/void disnewst(void);/*获得学生信息*/*=系统管理选择,管理员权限=*/void stu_system(void);/*对各种操作集中管理*/void sentmsg(void);/*发送公告*/char readmsg(void);/*浏览信息*/char delemsg(void);/删除信息void chagesbject(void);/*修改课程信息*/*=用户登录信息=*/void setlogintime(void);/*记录用户登录时间*/void di
8、slogintime(void);/*显示用户登录信息*/void setused(void);/*注册新用户资料*/char usedcheckname(char *name);/*用户信息检查,若存在用户,则返回1,否则返回0*/char usedcheckpass(char *name,char *password);/*查看用户名密码是否符合*/*=存储操作=*/char save(stu *head);/*保存用户数据*/char disload();/*显示用户信息*/stu* load(void);/*加载用户数据*/void clrtxt(char *str);/*清除文本信息
9、*/char* creat_txt(char *username);/*根据用户名,创建一个用户文件*/FILE* chekuser(char *username);/*根据用户名,查找是否有此用户信息,若无,返回NULL*/*=-main函数-=*/void main() FILE *fp; char i,j; char name15; system(color b5); memset(name,0,sizeof(name); if(fp=fopen(star_stu ,r+)=NULL) printf(将新建文件!n); fp=fopen(star_stu ,w+); fread(name
10、,sizeof(name),1,fp); if(strcmp(name,mass_key)!=0) printf(文件载入出错!t N为退出 回车键继续.:); i=getchar(); if(i=n)|(i=N) fclose(fp); exit(1); else printf(nn数据将重新初始化!n); printf(nn请输入4门科目名称n); memset(name,0,sizeof(name); fwrite(name,sizeof(name),5,fp); strcpy(name,mass_key); rewind(fp); fwrite(name,sizeof(name),1,
11、fp); for(i=0;inext=NULL; p1=p2=(stu*)malloc(sizeof(stu); i=0,j=0; system(cls); printf(nn请输入要录入的学生人数: ); scanf(%d,&stu_num); for(i=0;iaverage=0; printf(nn请输入学生学号: ); scanf(%s,p1-num); while(!cheknum(p1-num) printf(nn输入格式错误!请重新输入学号 : ); scanf(%s,p1-num); printf(nn请输入学生姓名 : ); scanf(%s,p1-name); while(!chekname(p1-name) printf(nn输入格式出错!不能带数
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1