C语言课设学生系统源代码_第1页
C语言课设学生系统源代码_第2页
C语言课设学生系统源代码_第3页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、说明:只提供源代码,有些需要自己创建文件请自行建立。#include<stdio.h> /*I/O函数 */#include <conio.h>#include<stdlib.h> /* 其它说明 */#include<string.h> /* 字符串函数 */#define LEN 15 /*学号和姓名最大字符数#define N 100 /* 最大学生人数 ,实际请更改struct record /* 结构体 */char codeLEN+1 。 /* 学号 */ char nameLEN+1 。 /* 姓名 */ int age。 /* 年

2、龄 */ char sex3 。 /* 性别 */char timeLEN+1 。 /* 出生年月 */ char add30 。 /* 家庭地址 */ char telLEN+1 。 /* 电话号码 */ char mail30 。 /* 电子邮件地址 */ char password20 。 /* 密码 */ char maogao20 。 char gaoshu20 。char cyuyan20 。stuN 。int k=1,n,m 。 /* 定义全局变量 */ void readfile(> 。 /* 函数声明 */ void seek(> 。void modify(>

3、; 。void insert(> 。void del(> 。void display(> 。void save(> 。void menu(> 。void panduan(> 。void mima(> 。void students(> 。void xueshengdenglu(> 。void LogOn(> 。void readfile1(> 。void readfile2(> 。void modify1(> 。void mimacharge(> 。void GetPassword(char *szFinalPa

4、ss> 。void teachlogon(> 。void insertchengji(> 。int main(>,实际请更改 */*/ system("color 1a"> 。while(k>panduan(>。system("pause">。return 0。void teachlogon(>void insertchengji(>int i,k,item,num。k=0。char sex13,s1LEN+1,s2LEN+1 printf(" 请输入要要修改的学生的学号。/* 以姓名

5、和学号最长长度:"> 。+1 为准 */scanf("%s",s1> 。for(i=0。 i<n 。 i+>if(strcmp(stui.code,s1>=0> /*比较字符串是否相等*/ k=1 。printf("nn"> 。printf(": * * 1.登记毛概分数 n"> 。printf("2.登记高数分数 n"> 。printf("田田 * 3.登记 C 语言分数 n"> 。printf("田田4.返回上层

6、菜单 n">。printf("田田.* n"> 。printf("田田* n"> 。printf("n"> 。printf(" *_*n "> 。printf("-n">。printf("-n">。while(1>printf("n 请选择子菜单编号:"> 。scanf("%d",&item> 。switch(item>case 1:printf(&qu

7、ot;n 请输入毛概分数:"> 。scanf("%s",s2> 。strcpy(stui.maogao,s2> 。 save(>。 printf("tttO( _ >O 登录成功 n"> 。 break。case 2:printf("n 请输入高数分数:"> 。scanf("%s",stui.gaoshu> 。save(> 。printf("tttO( _>O 修改成功 n"> 。 break。case 3:printf

8、("n 请输入 C 语言分数 :"> 。scanf("%s",sex1> 。strcpy(stui.cyuyan,sex1> 。 save(>。 printf("tttO( _ >O 修改成功 n"> 。 break。case 4:panduan(>。 break。default:printf("n请在 -8 之间选择 n"> 。if(k=0>printf("ntt*/( o >/ 输入的学号有误*nn">。system(&quo

9、t;pause"> 。system("cls"> 。menu(> 。void panduan(>char i,j 。printf("n 【学生信息管理系统】 n"> 。printf(" -系统菜单显示如下-"> 。printf("n"> 。printf("nt = 【学生登录】 n"> 。printf("nt = 【管理员登录】 n"> 。printf("nt = 【退出系统】 n">

10、。printf("nn"> 。printf("tt§§§§n"> 。printf("tt n"> 。printf("ttn"> 。printf("tt 北 京 化 工 n"> 。printf("ttn"> 。printf("tt n"> 。printf("tt n"> 。scanf("%s",&i> 。switch(

11、i>case('1'>:system("cls"> 。 students(>。 break。case('2'>:system("cls"> 。 mima(> 。 break。case('3'>: exit(0> 。 break。case('4'>:insertchengji(> 。 break。default:printf(" 请在 1-3 之间选择 n"> 。void mimacharge(>

12、 char username16,password20,password120,password220,q 。 int i,j,num,item 。int k=0 。printf("nn"> 。printf("请输入学号 : "> 。scanf("%s",username> 。for(i=0 。 i<=n 。i+>if(strcmp(stui.code,username>=0>k=1 。printf("nn"> 。printf("请输入密码:"&g

13、t; 。scanf("%s",password>。if(strcmp(stui.password,password> =0> printf("nn">。printf("请输入新的密码: "> 。scanf("%s",password1> 。printf("nn">。printf("请再次输入新密码: "> 。scanf("%s",password2> 。if(strcmp(password1,passw

14、ord2>=0>strcpy(stui.password,password1>。 save(>。printf("nn">。printf("密码修改完毕n"> 。printf("nn"> 。printf("按任意键返回上层菜单"> 。system("pause"> 。students(>。elsesystem("cls"> 。printf("nn"> 。printf("两次输入

15、的密码不一致,请重新输入n">。mimacharge(> 。else printf("nn"> 。system("cls"> 。printf("nn"> 。printf("输入密码有误,请重新输入n"> 。mimacharge(> 。if (k=0>system("cls"> 。printf("nn"> 。printf("输入的学号有误,请重新输入 n"> 。mimacharge(

16、> 。void modify1(>char username20,password20 。char szPassword128 。char sex13,s1LEN+1,s2LEN+1。int i,j,num,item 。int k=0 。printf("n请输入学号 :"> 。scanf("%s",username> 。for(i=0 。 i<n 。 i+>if(strcmp(stui.code,username>=0> int k=1 。printf("n请输入密码 (默认密码为0000>

17、:"> 。 /开始以不回显且支持退格方式获取输入密码GetPassword(szPassword>。if(strcmp(stui.password,szPassword> =0> system("cls">。printf("ntttt登录成功 !nnn"> 。num=i 。printf(": * * 1.修改姓名 n"> 。printf("2.修改年龄 n"> 。printf("田田 * 3.修改性别 n"> 。printf(&qu

18、ot;田田4.修改出生年月 n">。printf("田田 .* 5.修改地址 n"> 。printf("田田* 6.修改电话号码 n"> 。printf("7.修改 E-mail 地址 n"> 。printf(" *_*8.退出本菜单 n "> 。printf("-n">。printf("-n">。while(1>printf(" 请选择子菜单编号:"> 。scanf("%d&quo

19、t;,&item> 。switch(item>case 1:printf(" 请输入新的姓名:n"> 。scanf("%s",s2> 。strcpy(,s2> 。 save(>。 printf("tttO( _ >O 修改成功 n"> 。break。case 2:printf(" 请输入新的年龄:n"> 。scanf("%d",&stunum.age> 。 save(>。printf(&quo

20、t;tttO( _ >O 修改成功 n"> 。 break。case 3:printf(" 请输入新的性别:n"> 。scanf("%s",sex1> 。strcpy(stunum.sex,sex1> 。 save(>。 printf("tttO( _ >O 修改成功 n">。 break。case 4:printf(" 请输入新的出生年月:n"> 。scanf("%s",s2> 。strcpy(stunum.time,s2&

21、gt; 。 save(>。 printf("tttO( _ >O 修改成功 n"> 。 break。case 5:printf(" 请输入新的地址:n"> 。scanf("%s",s2> 。strcpy(stunum.add,s2> 。 save(>。printf("tttO( _>O 修改成功 n"> 。 break。case 6:printf(" 请输入新的电话号码:n"> 。scanf("%s",s2>

22、。strcpy(stunum.tel,s2> 。save(>。printf("tttO( _ >O 修改成功 n"> 。 break。case 7:printf(" 请输入新的E-mail 地址 :n"> 。scanf("%s",s2> 。strcpy(stunum.mail,s2> 。 save(>。 printf("tttO( _ >O 修改成功 n"> 。 break。case 8:students(>。break。default:printf

23、(" 请在 0-8 之间选择 n"> 。else system("cls"> 。printf("nt*(>_<>输入密码有误*n">。modify1(> 。if(k=0> system("cls"> 。printf("n"> 。printf("nt*(>_<>输入的学号有误,请重新输入 *n">。modify1(> 。void lookchengji(>char szFinalPa

24、ss30 。char szPassword128 。char s121,password20 。int i,j 。int k=0 。printf("n请输入学号 :"> 。scanf("%s",s1> 。for(i=0 。 i<=n 。 i+>if(strcmp(stui.code,s1>=0>k=1 。printf("n请输入密码 (默认密码为0000>:"> 。 /开始以不回显且支持退格方式获取输入密码GetPassword(szPassword>。if(strcmp(stui

25、.password,szPassword> =0>system("cls">。printf("nnn">。printf("-你的信息如下-n">。printf("n">。printf(" 毛概成绩高数成绩 C 语言成绩n"> 。printf("-n">printf("%7s%6s%6sn",stui.maogao,stui.gaoshu,stui.cyuyan>printf("-n"

26、>printf("n"> 。printf("n"> 。printf("nn 按任意键返回学生菜单"> 。system("pause"> 。students(>。elsesystem("cls"> 。printf("n*(>_<>输入密码有误,请重新输入*n">。LogOn(> 。if (k=0> system("cls"> 。 printf("n">

27、; 。printf("tt*(>_<>*输入的学号有误,请重新输入 *n">。LogOn(> 。void LogOn(>char szFinalPass30 。char szPassword128 。char s121,password20 。int i,j 。int k=0 。printf("n请输入学号 :"> 。scanf("%s",s1> 。for(i=0 。 i<=n 。 i+>if(strcmp(stui.code,s1>=0>k=1 。printf(

28、"n请输入密码 (默认密码为0000>:"> 。 /开始以不回显且支持退格方式获取输入密码GetPassword(szPassword>。if(strcmp(stui.password,szPassword> =0>system("cls"> 。printf("nnn">。printf("-你的信息如下-n">。printf("n">。printf(" 学生学号学生姓名 年龄 性别出生年月地址printf("-n"

29、;>电话。E-mailn">。printf("%6s %7s %6d %5s %9s %8s %10s %14sn",stui.code,,stui.age, stui.sex,stui.time,stui.add,stui.tel,stui.mail> 。printf("-n">。printf("n"> 。printf("b"> 。printf("nn 按任意键返回学生菜单"> 。system("pause&quo

30、t;>。students(>。elsesystem("cls"> 。printf("n*(>_<>输入密码有误,请重新输入*n">。LogOn(>。if (k=0> system("cls"> 。 printf("n"> 。printf("tt*(>_<>*输入的学号有误,请重新输入 *n">。LogOn(> 。void mima(>char szFinalPass30 。char szPass

31、 k 。char j120="123" 。printf("nn"> 。printf("请输入管理员密码:GetPassword(szPassword>。if(strcmp(j1,szPassword>=0>"> 。k=1 。elsek=2 。switch(k>case(1>:system("cls"> 。 menu(>。 break。case(2>: printf("nn输入的密码有误,按任意键返回上层菜单!n"&

32、gt; 。system("pause">。 system("cls"> 。 panduan(>。break。void students(>int i 。readfile1(> 。printf("nn"> 。printf("*O( _ >O 欢迎您来到学生信息查询系统*n">printf("nn"> 。printf("您需要以下哪项功能请输入对应数字O(_ >On"> 。printf("nn"

33、> 。printf("t n"> 。printf("tprintf("tprintf("tprintf("t n"> 。 n"> 。欢迎使用0 . 刷新学生信息 n"> 。 n"> 。printf("t n"> 。printf("t 1.查看学生信息 n"> 。printf("t n"> 。printf("t 2.修改学生信息 n"> 。printf(&qu

34、ot;t n"> 。printf("t 3.修改密码 n"> 。printf("t n"> 。printf("t 4.查看学生成绩 n"> 。printf("t n"> 。printf("t 5.返回上层菜单 n"> 。printf("t n"> 。printf("t n"> 。scanf("%d",&i> 。switch(i>case(0>:syste

35、m("cls"> 。readfile2(> 。 break。case(1>:system("cls"> 。LogOn(> 。 break。case(2>:system("cls"> 。modify1(> 。 break。case(3>:system("cls"> 。mimacharge(> 。 break。case(4>:system("cls"> 。lookchengji(> 。 break。case(5>

36、;:system("cls"> 。panduan(>。 break。default:system("cls"> 。 printf("nn请输入 0-5 的数字 ,按任意键返回上一菜单n"> 。 system("pause">。 students(>。 break。void help(>printf("n0. 欢迎使用系统帮助!n"> 。printf("n1. 本系统由309 为您提供。 n"> 。printf("

37、n2. 按照菜单提示键入数字代号。n"> 。printf("n3. 如有疑问或者遇到bug 请联系 309 小组。 n"> 。printf("n4. 谢谢您的使用!O( _ >Onnn"> 。void readfile1(>/*建立信息 */char *p="student.txt" 。FILE *fp 。int i=0 。if (fp=fopen("D:student.txt","r">>=NULL>printf("Open

38、file %s error! Strike any key to exit!",p>。system("pause">。exit(0> 。while(fscanf(fp,"%s %s%d%s %s %s %s %s %s %s %s %s ",stui.code,,&stui.age,stui.sex,stui.time,stui.add,stui.tel,stui.mail,stui.password,stui.maogao,stui.gaoshu,stui.cyuyan>=12>i+ 。

39、i=i 。fclose(fp> 。n=i 。void readfile2(>/*建立信息 */char *p="student.txt" 。FILE *fp 。int i=0 。if (fp=fopen("D:student.txt","r">>=NULL>printf("Open file %s error! Strike any key to exit!",p>。system("pause">。exit(0> 。while(fscanf(fp,

40、"%s %s %d %s %s %s %s %s %s %s %s %s",stui.code,,&stui. age,stui.sex,stui.time,stui.add,stui.tel,stui.mail,stui.password, stui.maogao,stui.gaoshu,stui.cyuyan>=12> i+ 。i=i 。fclose(fp> 。n=i 。students(>。void readfile(>/*建立信息 */char *p="student.txt" 。FILE

41、*fp 。int i=0 。if (fp=fopen("D:student.txt","r">>=NULL>printf("Open file %s error! Strike any key to exit!",p>。system("pause">。exit(0> 。while(fscanf(fp,"%s %s%d%s %s %s %s %s %s %s %s %s ",stui.code,,&stui.age,stui.sex,s

42、tui.time,stui.add,stui.tel,stui.mail,stui.password,stui.maogao,stui.gaoshu,stui.cyuyan>=12>i+ 。i=i 。fclose(fp> 。n=i 。void seek(> /*查找 */int i,item,flag。char s121 。 /* 以姓名和学号最长长度+1 为准 */printf("ntt*O( _ >O 欢迎来到查询系统,请按提示操作printf(" ¤n"> 。*nn">。printf("

43、1.按学号查询n"> 。printf(" - / 2.按姓名查询 n"> 。printf(" 3. 返回上层菜单n"> 。while(1>printf("n 请选择子菜单编号scanf("%d",&item> 。:"> 。flag=0 。switch(item>case 1:printf("n 请输入要查询的学生的学号scanf("%s",s1> 。:"> 。for(i=0。 i<n 。 i+>

44、;if(strcmp(stui.code,s1>=0>flag=1 。printf("nntttO(printf(" 学生学号 _ >O 您要查找的信息如下学生姓名 年龄 性别 出生年月nn"> 。地址电话E-mailn">。printf("-n">。printf("%6s %7s %6d %5s %9s %8s %10s %14sn",stui.code,,stui.age,stui.sex,stui.time,stui.add,stui.tel,stui.m

45、ail>。printf("nn"> 。system("pause">。system("cls"> 。seek(>。break。if(flag=0>system("cls"> 。printf("nttto(>_<>o 该学号不存在,请重新选择 *n">。seek(>。break。 。break。case 2:printf("n 请输入要查询的学生的姓名scanf("%s",s1> 。:&qu

46、ot;> 。for(i=0。 i<n 。 i+>if(strcmp(,s1>=0>flag=1 。printf("nntttO(printf(" 学生学号 _ >O 您要查找的信息如下学生姓名 年龄 性别 出生年月nn"> 。地址电话E-mailn">。printf("-n">。printf("%6s %7s %6d %5s %9s %8s %10s %14sn",stui.code,,stui.age,stui.sex,st

47、ui.time,stui.add,stui.tel,stui.mail>。printf("nn"> 。system("pause">。system("cls"> 。seek(>。if(flag=0>system("cls"> 。printf("nttto(>_<>o 该姓名不存在 *n">。seek(>。break。case 3:system("cls"> 。 menu(> 。 break。d

48、efault:system("cls"> 。printf("nttt*( >/ 请在 1-3 之间选择 *n">。seek(>。void modify(> /* 修改信息 */int i,k,item,num 。k=0。char sex13,s1LEN+1,s2LEN+1printf(" 请输入要要修改的学生的学号scanf("%s",s1> 。/* 以姓名和学号最长长度:"> 。+1 为准 */for(i=0 。 i<n 。 i+>if(strcmp(stui

49、.code,s1>=0> /*比较字符串是否相等*/ k=1 。num=i 。printf("nn"> 。printf(": * * 1.修改姓名 n"> 。printf("2.修改年龄 n"> 。printf("田田 * 3.修改性别 n"> 。printf("田田4.修改出生年月 n">。printf("田田 .* 5.修改地址 n"> 。printf("田田* 6.修改电话号码 n"> 。prin

50、tf("7.修改 E-mail 地址 n"> 。printf(" *_*8.退出本菜单 n "> 。printf("-n">。printf("-n">。while(1>printf("n 请选择子菜单编号:"> 。scanf("%d",&item> 。switch(item>case 1:printf("n 请输入新的姓名:"> 。scanf("%s",s2> 。str

51、cpy(,s2> 。 save(>。 printf("tttO( _ >O 修改成功 n"> 。 break。case 2:printf("n 请输入新的年龄:"> 。scanf("%d",&stunum.age> 。 save(>。printf("tttO( _ >O 修改成功 n"> 。 break。case 3:printf("n 请输入新的性别:"> 。scanf("%s",se

52、x1> 。strcpy(stunum.sex,sex1> 。 save(>。 printf("tttO( _>O 修改成功 n"> 。 break。case 4:printf("n 请输入新的出生年月:"> 。scanf("%s",s2> 。strcpy(stunum.time,s2> 。 save(>。 printf("tttO( _ >O 修改成功 n"> 。 break。case 5:printf("n 请输入新的地址:"&

53、gt; 。scanf("%s",s2> 。strcpy(stunum.add,s2> 。 save(>。printf("tttO( _>O 修改成功 n"> 。 break。case 6:printf("n 请输入新的电话号码:"> 。scanf("%s",s2> 。strcpy(stunum.tel,s2> 。save(>。printf("tttO( _ >O 修改成功 n"> 。 break。case 7:printf(&qu

54、ot;n 请输入新的E-mail 地址 :"> 。scanf("%s",s2> 。strcpy(stunum.mail,s2> 。 save(>。 printf("tttO( _ >O 修改成功 n"> 。 break。case 8:system("cls"> 。 menu(> 。 break。default:printf("n请在 -8 之间选择 n"> 。if(k=0>printf("ntt*/( o >/ 输入的学号有误*nn">。system("pause"> 。system("cls"> 。menu(> 。void sort(>/* 按学号排序 */int i,j,*p,*q,s 。char temp10 。for(i=0 。 i<n-1 。 i+>for(j=n-1 。 j>i 。 j->if(s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论