C语言课程设计说明书--学生信息管理系统
更新时间:2024-03-23 03:17:01 阅读量: 综合文库 文档下载
内蒙古科技大学 本科生课程设计说明书
题 目:C语言课程设计 —— 学生管理系统 学生姓名:郭文杰 学 号:1567159106 专 业:软件工程 班 级:软件一班 指导教师:康懿
日 期: 2016 年 1月 3 日
内蒙古科技大学课程设计说明书
内蒙古科技大学课程设计任务书
课程名称 设计题目 指导教师 康懿 C语言课程设计 学生信息管理系统 时间 2016.1.5——2016.1.9 一、教学要求 1. 巩固和加深学生对C语言课程的基本知识的理解和掌握 2. 掌握C语言编程和程序调试的基本技能 3. 利用C语言进行基本的软件设计 4. 掌握书写程序设计说明文档的能力 5. 提高运用C语言解决实际问题的能力 二、设计资料及参数 每个学生在教师提供的课程设计题目中任意选择一题,独立完成,题目选定后不可更换。 某班学生基本信息管理,包括以下功能: ? 从键盘输入包括学号、姓名、性别、出生年月日、籍贯、所在院系、专业、奖惩信息等,并将其保存在磁盘文件里 ? 具有进行单项查询或多项查询的功能(即按照给定的关键字姓名等找出满足条件的纪录) ? 具有插入、修改和删除信息的功能 ? 具有输出文件数据信息的功能 三、设计要求及成果 1. 分析课程设计题目的功能需求(可选用数组或链表实现,可多人(最多3人)协作完成一个题目) 2. 写出详细设计说明(至少包括功能实现分析和模块流程图) 3. 编写程序代码,调试程序使其能正确运行(代码书写要规范,标示符要见名知意,要有必要的注释,每人至少500行代码,不包括注释和花括号) 4. 设计完成的软件要便于操作和使用 5. 设计完成后提交课程设计报告(请严格按照模板进行排版) 四、进度安排 第一天 选择课程设计题目,分析课题的要求 第二天 编程 第三天 编程及调试 第四天 写课程设计报告 第五天 提交课程设计报告(打印稿及电子稿) 五、评分标准 1. 根据平时上机考勤、表现和进度,教师将每天点名和检查 2. 根据课程设计完成情况,必须有可运行的软件。 3. 根据课程设计报告的质量,如有雷同,则所有雷同的所有人均判为不及格。 六、建议参考资料 1.《C语言程序设计》,谭浩强,清华大学出版社 2.《C语言程序设计课程设计》,刘振安,机械工业出版社
I
内蒙古科技大学课程设计说明书
II
内蒙古科技大学课程设计说明书
目 录
内蒙古科技大学课程设计任务书 ···························································· I 第一章 需求分析 ·············································································· 4
1.1 引言 ·················································································· 4 1.2 任务概述 ············································································ 4 1.3 数据描述 ············································································ 4 1.4 功能需求 ············································································ 4 1.5 性能需求 ············································································ 5 1.6 运行需求 ············································································ 5 1.7 任务计划 ············································································ 5 第二章 概要设计 ············································································ 6
2.1 总体设计 ············································································ 6 2.2 数据类型设计(或数据结构设计) ··········································· 6 2.3 接口设计 //函数声明 ·························································· 7 2.4 运行界面设计 ······································································ 8 第三章 详细设计 ··········································································· 12
3.1 输入模块设计 ····································································· 12 3.2 输出模块设计 ····································································· 13 3.3 查找模块设计 ····································································· 14 3.4 排序模块设计 ····································································· 16 3.5 保存及读取模块设计 ···························································· 17 第四章 测试分析 ··········································································· 19
4.1 测试程序执行情况 ······························································· 19 4.2 出现的问题和解决的方法 ······················································ 19 第五章 用户手册(可选) ······························································· 20
5.1 使用说明 ··········································································· 20 5.2 运行说明 ··················································· 错误!未定义书签。 第六章 课程设计总结 ····································································· 21 附录:程序代码 ················································································ 22 参考文献 ························································································· 39 致谢 ······························································································· 40
III
内蒙古科技大学课程设计说明书
第一章 需求分析
1.1 引言
随着学生人数的增多,学生信息管理变得越来越困难,为了方便学校对学生信息的管理,一个简易的学生信息管理系统可以解决一些简单的问题
1.2 任务概述
某班学生基本信息管理,包括以下功能:
? 从键盘输入包括学号、姓名、性别、出生年月日、籍贯、所在院系、专业、奖惩信息等,并将其保存在磁盘文件里 ? 具有进行单项查询或多项查询的功能(即按照给定的关键字姓名等找出满足条件的纪录)
? 具有插入、修改和删除信息的功能 ? 具有输出文件数据信息的功能
1.3 数据描述
需要输入的数据包括学生的学号、姓名、出生年月日、籍贯、所在院系、专业、奖惩信息系统会自动按学号排序存储信息,出生年月日为整型,其他数据为字符型
1.4 功能需求
学生信息管理系统存放了每个学生的学号、姓名、性别、年龄、出生年月日、
籍贯、专业、院系、奖罚信息的数据库。每个人的信息定义在一个结构体变量中。其结构如下:
系统通过显示程序、添加加程序、查询程序、删除程序、修改程序、排序程序来实现学生信息管理系统的改变颜色功能、显示功能、追加功能、查询功能、
4
内蒙古科技大学课程设计说明书
删除功能、修改功能、排序功能。各个功能的调用通过主函数中的switch语句来实现。
1.5 性能需求
1.6 运行需求
1.7 任务计划
1.程序可以根据使用者的合法操作实现已罗列的功能
2.在执行插入功能时,要输入成绩时再输入完最后一个数据后再输入‘-1’才能实现正常退出
3.在输入数字超出范围时,程序会做出提示
4.若想退出 查询,删除,修改,筛选 功能时,若想不进行操作退出功能,需要按任意键发返回主菜单
/*
5
内蒙古科技大学课程设计说明书
第二章 概要设计
2.1 总体设计
改变颜色 主函数
注册信息 学号查找 姓名查找 修改信息 插入信息 删除信息 输出信息 保存文件 读取文件 排序 退出
2.2 数据类型设计(或数据结构设计) 1.数据以顺序结构储存 2.存在两个结构体
typedef struct data {
int year; int month; int day; }DATA;
typedef struct student
6
结束 内蒙古科技大学课程设计说明书
{
char name[M]; char sex; DATA birthday; char num[20]; char jiguan[20]; char zhuanye[20]; char yuanxi[20]; char jianli[120];
}stu;
2.3 接口设计
表2.1:函数列表
函数名 main YanSe Menu DataSort ZhuCe XieRu DuQu Peint XueHao XingMing XiuGai ChaRu ShaChu 函数格式 //即函数首部 int main() int YanSe (void) int Menu(void) 函数功能 主函数 颜色菜单 主菜单 void DataSort(stu st[],int 排序 n); int ZhuCe(stu st[],int n); void XieRu(stu st[],int n); int DuQu(stu st[]); void Print(stu st[],int n); void XueHao(stu st[],int n); void XiuGai(stu st[],int n); int ChaRu(stu st[],int n); void ShaChu(stu st[],int n); 注册信息 写入信息到文件 读取文件信息 输出信息 按学好查找 修改信息 插入信息 删除信息 void XingMing(stu st[],int n); 按姓名查找
7
内蒙古科技大学课程设计说明书
2.4 运行界面设计
8
内蒙古科技大学课程设计说明书
9
内蒙古科技大学课程设计说明书
10
内蒙古科技大学课程设计说明书
11
内蒙古科技大学课程设计说明书
第三章 详细设计
3.1 输入模块设计
int ZhuCe (stu st[]) {
int i=-1;
system( \清屏
printf(\ printf(\ 1.更新成员信息 *\\n\ printf(\ do{
i++;
printf(\请输入姓名:\\n\ scanf(\ if(atoi(st[i].name)>=0) {
printf(\请输入性别(w/m):\\n\ scanf(\
printf(\请输入出生年月日:\\n\
scanf(\
printf(\请输入学生证号:\\n\ scanf(\ printf(\请输入个人籍贯:\\n\ scanf(\ printf(\请输入个人专业:\\n\ scanf(\ printf(\请输入所在院系:\\n\ scanf(\
12
内蒙古科技大学课程设计说明书
}
}
printf(\请输入简历:\\n\ scanf(\
printf(\编号%d数据添加成功!\\n\ printf(\输入姓名为负数结束输入!\\n\ printf(\
else
break;
}while(st[i].num>0);
printf(\ printf(\数据更新成功!\\n\ system(\ return i;
3.2 输出模块设计
程序通过一个printf函数把输出信息的表头打印出来,再通过一个for循环把每一个学生的信息输出,再输出的时候,通过定义数字、字符的长度大于本身的长度来实现输出信息的排版和隔开,使输出的信息排版美观。
void Print(stu st[],int n) { \\n\
13
int i;
system( \
printf(\printf(\编号姓名\\t性别\\t出生年月日\\t学生证号\\t籍贯\\t专业\\t院系\\t简历
内蒙古科技大学课程设计说明书
for(i=0;i printf(\ i+1,st[i].name,st[i].sex,st[i].birthday.year,st[i].birthday.month,st[i].birthday.day, st[i].num,st[i].jiguan,st[i].zhuanye,st[i].yuanxi,st[i].jianli); } } 3.3 查找模块设计 void XueHao(stu st[],int n) { char x[20]; int i; system( \ printf(\printf(\ 2.学生证号查找 *\\n\printf(\printf(\输入你要查询的身份证号:\scanf(\for(i=0;i if(strcmp(st[i].num,x)==0) { printf(\编号\\t姓名\\t性别\\t出生年月日\\t学生证号\\t籍贯\\t专业\\t 院系\\t简历\\n\ 14
正在阅读:
C语言课程设计说明书--学生信息管理系统03-23
读书报告之“数字建构 - 当代高技派建筑的数字化设计趋向简析”04-12
梅特勒托利多IND131-331称重显示控制器使用说明书09-07
C语言1-6章填空题05-20
博爱安全网三类人员试题-建筑安全管理规定试卷201512(一)04-04
2019年校园电视台项目策划书03-15
优秀实习生申请材料08-12
新版PEP四年级英语下册导学案 - 图文05-20
邮政局邮局投递员先进事迹材料03-12
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 说明书
- 管理系统
- 语言
- 课程
- 学生
- 设计
- 信息