学生选课系统(详细设计说明书)_第1页
学生选课系统(详细设计说明书)_第2页
学生选课系统(详细设计说明书)_第3页
学生选课系统(详细设计说明书)_第4页
学生选课系统(详细设计说明书)_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1、.1 引言21.1 编写目的21.2 背景21.3 定义21.4 参考资料22 程序系统的结构23 程序 1(标识符)设计说明33.1 程序描述123.2 功能123.3 性能123.4 输人项1133.5 输出项1133.6 算法1133.7 流程逻辑1133.8 接口1133.9 存储分配133.10 注释设计133.11 限制条件133.12 测试计划133.13 尚未解决的问题1144 程序 2(标识符)设计说明114.详细设计说明书1 引言1.1 编写目的为了更好的描述软件结构以及系统各组成成分之间的相互关系, 因此撰写详细设计说明书。1.2 背景a 待开发的软件系统的名称:大连交通

2、大学学生选课系统;b本系统主要为方便广大学选课,避免选课高峰期选不上等问题;c 本系统的受益人为:老师、学生和系统管理人员。1.3 定义详见概要设计说明书。1.4 参考资料【 1】 张海藩,软件工程导论【M 】北京:清华大学出版社2008 年 2 月第五版【 2】 王珊、萨师煊,数据库系统概论【 M 】北京:高等教育出版社 2006 年 5 月第四版2 程序系统的结构该详细设计只针对学生信息管理中的信息查询和信息维护两个子功能作说明,其程序流程图如下:.开始输入用学号、密码验证学号、密码N验证正确进入相关界面Y提交查询条件查询信息是否退出Y结束N图 4-1学生信息查询模块程序流程图开始输入旧密

3、码、新密码验证旧密码是否正确N正确NY验证新密码是否合法信息合法Y提交修改信息提示修改成功结束图 4-2 学生信息管理模块程序流程图.3 程序 1(标识符)设计说明#include#includeint N1,N2,kk1,kk2,kk3;struct couse * head1;struct student * head2;struct couse/课程信息结构体int num1;char name120;int score;int nelepeo;/ 课程已选人数int Melepeo;/ 课程人数上限struct couse * next;struct student/ 学生信息结构体i

4、nt num2;char name220;int nelenum50;/ 已选课程编号int nelen;/ 已选课程数量struct student * next;void Ms()for(kk1=0;kk11100;kk1+)for(kk2=0;kk21200;kk2+)for(kk3=0;kk3num1,p1-name1,&p1-score,&p1-Melepeo);p1-nelepeo=0;head1=NULL;while(p1-num1!=0)N1=N1+1;if(N1=1)head1=p1;.else p2-next=p1;p2=p1;p1=(struct couse * )mal

5、loc(sizeof(struct couse); scanf(%d%s%d%d,&p1-num1,p1-name1,&p1-score,&p1-Melepeo); p1-nelepeo=0;p2-next=NULL;void filec()/ 录入键盘子函数(从文件录入 )FILE * fp;char 20;struct couse *p1,*p2;N1=0;printf( 输入要读入的文件路径:);getchar();gets();if(fp=fopen(,r)=NULL)printf( 找不到 %s 文件 !n,);exit(0);p1=p2=(struct couse*)malloc(

6、sizeof(struct couse); fscanf(fp,%d%s%d%d%d,&p1-num1,p1-name1,&p1-score, &p1-nelepeo,&p1-Melepeo);head1=NULL;while(!feof(fp)N1=N1+1;if(N1=1)head1=p1;else p2-next=p1;p2=p1;p1=(struct couse * )malloc(sizeof(struct couse); fscanf(fp,%d%s%d%d%d,&p1-num1,p1-name1,&p1-score,&p1-nelepeo,&p1-Melepeo);p2-next

7、=NULL;void inputc()/ 录入课程主函数int i;printf(ttt录入课程信息n);printf(n1. 从键盘录入 n);printf(2. 从文件录入 n);.printf(3. 返回主菜单 n);printf( 请选择 (13):n);scanf(%d,&i);switch(i)case(1):keyboardc();break;case(2):filec();break;case(3):break;void inputs()/ 录入学生信息主函数int i;printf(ttt录入学生信息n);printf(n1. 从键盘录入 n);printf(2. 从文件录入

8、 n);printf(3. 返回主菜单 n);printf( 请选择 (13):n);scanf(%d,&i);switch(i)case(1):keyboards();break;case(2):files();break;case(3):break;void elective()/ 学生选课主函数int i;printf(ttt学生选课 n);printf(1. 查询可选课程 n);printf(2. 查询已选课程 n);printf(3. 返回主菜单 n);printf( 请输入 (13):n);scanf(%d,&i);switch(i)case(1):cheak();break;ca

9、se(2):hcheak();break;case(3):breakvoid listc()/ 输出课程信息.struct couse * p;p=head1;printf( 课程编号 课程名称 学分 课程已选人数 课程人数上限 n); while(p!=NULL)printf(%-8d%10s%6d%8d%12dn,p-num1,p-name1,p-score,p-nelepeo,p-Melepeo); p=p-next;void lists()/ 输出学生信息struct student * p;p=head2;printf( 学生学号学生姓名已选课程数量 n);while(p!=NULL

10、)printf(%-4d %10s %6dn,p-num2,p-name2,p-nelen);p=p-next;void intoc()/ 存储课程信息FILE * fp;struct couse * p;char 30;printf( 输入课程信息要保存的文件路径:);getchar();gets();if(fp=fopen(,w)=NULL)printf(n 保存失败 !);exit(0);p=head1;while(p!=NULL)fprintf(fp,%d %s %d %d %dn,p-num1,p-name1,p-score,p-nelepeo,p-Melepeo);p=p-next

11、;.fclose(fp);printf( 课程信息已保存在%s 中!n,);void intos()/ 存储学生信息FILE * fp;struct student * p;char 30;printf( 输入学生信息要保存的文件路径:);getchar();gets();if(fp=fopen(,w)=NULL)printf(n 保存失败 !);exit(0);p=head2;while(p!=NULL)fwrite(p,sizeof(struct student),1,fp);p=p-next;fclose(fp);printf( 学生信息已保存在%s 中!n,);void into()/

12、 存储信息int i;.printf(1. 存储课程信息 n);printf(2. 存储学生信息 n);printf(3. 返回主菜单 n);printf( 请输入 (13)n);scanf(%d,&i);switch(i)case(1):intoc();break;case(2):intos();break;case(3):break;void store()/ 信息主函数int i;printf(tt 系统信息查看及存储n);printf(1. 查看课程信息 n);printf(2. 查看学生信息 n);printf(3. 存储信息 n);printf(4. 返回主菜单 n);printf

13、( 请输入 (14):n);scanf(%d,&i);switch(i)case(1):listc();break;case(2):lists();break;case(3):into();break;case(4):break;.int main()/ 主函数int i;start:printf(nttt欢迎使用学生选课系统!n);printf( 菜单 :n);printf(1. 录入课程信息 n);printf(2. 课程管理 n);printf(3. 录入学生信息 n);printf(4. 学生信息管理 n);printf(5. 学生选课 n);printf(6. 系统信息查看及存储n)

14、;printf(7. 退出系统 n);printf(n 请输入菜单选项(17):n);scanf(%d,&i);if(i7)printf( 输入错误 ,请重输 :n);goto start;switch(i)case(1):system(cls);inputc();goto start;break;.case(2):system(cls);managementc();goto start;break;case(3):system(cls);inputs();goto start;break;case(4):system(cls);managements();goto start;break;case(5):system(cls);elective();goto start;break;.case(6):system(cls);store();goto start;break;case(7):system(cls);printf( 感谢使用本系统!nn 再见 !n);return(0);3.1 程序描述该程序能够较全面的实现学生选课系统, 另还能进行学生信息管理和成绩查询等等。3.2 功能录入课程信息、课程管理、录入学生信息、学生信息管理、学生选课、系统信息

温馨提示

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

评论

0/150

提交评论