C#程序课程设计报告Word格式.docx
- 文档编号:22145706
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:29
- 大小:136.57KB
C#程序课程设计报告Word格式.docx
《C#程序课程设计报告Word格式.docx》由会员分享,可在线阅读,更多相关《C#程序课程设计报告Word格式.docx(29页珍藏版)》请在冰豆网上搜索。
3、图书管理系统程序
1、浏览书籍信息2、修改书籍信息3、统计书记情况4、查询书的基本信息5、录入新书信息
1、输入教师信息2、查看教师信息3、清空记录4、退出程序
课程设计报告规范
1、完成系统需求分析:
包括系统设计目的与意义;
系统功能需求;
输入输出的要求。
2、完成系统概要设计:
程序由哪些模块组成以及模块之间的层次结构、各模块的调用关系;
每个模块的功能;
课题涉及的数据结构和数据库结构;
即要存储什么数据,这些数据是什么样的结构,它们之间有什么关系等。
3、完成系统详细设计:
包括采用C++语言定义相关的数据类型;
写出各模块的类C++码算法;
画出函数的调用关系图。
4、调试分析、设计体会、测试数据:
准备典型的测试数据和测试方案,包括正确的输入及输出结果和含有错误的输入及输出结果;
程序调试中遇到的问题以及解决问题的方法;
课程设计过程经验教训、心得体会。
5、关键源程序(带注释)
6、其他
1)设计正确,方案合理。
2)界面友好,使用方便。
3)程序精炼,结构清晰。
4)设计报告5000字以上,含程序设计说明、系统的功能框图、流程图、源程序清单等。
5)实际操作过程中遇到的问题及解决方法:
设计总结及心得体会.
6)上机演示。
二、进度安排
第16周星期一14时:
00分
星期二14时:
00分
星期四14时:
星期五14时:
第17周星期二8时:
1系统需求分析
利用C++语言和access数据库的相关知识设计与开发一个教师工作量统计系统,具有教师编号,姓名,工作学时的输入功能;
可以在数据库中查询和删除所保存的记录:
并具有退出该系统模块的功能。
2总体设计
2.1总体设计图
输入教师信息
图2.1
2.2各函数之间的调用关系
图2.2
图2.1各函数的调用关系
2.3数据结构及数据库
程序利用C++语言编写,数据保存到access数据库实现数据保存和查询以及数据库的更新。
3详细设计
3.1C++语言定义的相关数据类型
classPerson
{
public:
voiddisplay()
{
cout<
<
"
姓名:
;
cin>
>
name;
cout<
编号:
num;
}
charname[20];
//名字
intnum;
};
//编号
classTeacher:
publicPerson//教师
{public:
Teacher(ints=800)
{score=s;
}
voiddisplay1();
intscore;
//基本工资
inttime;
//月工作量
classShiyanyuan:
publicPerson//实验员
Shiyanyuan(ints=650,intb=150)
buzu=b;
voiddisplay1()
{cout<
请输入实验员的"
Person:
:
display();
}
intbuzu;
//补助
};
classJianzhi1:
publicTeacher,publicShiyanyuan//教师兼职实验员
Jianzhi1(ints=800,intb=150):
Teacher(s=800),Shiyanyuan(b=150){}
请输入教师兼职实验员的"
Teacher:
请输入教师兼职实验员的月工作量(小时):
"
time;
Teachert[100];
Shiyanyuans[100];
Jianzhi1j[100];
3.2各模块的类C码算法
3.2.1文件录入函数
voidwenjianluru()//文件录入
intc;
for(i=0;
i++)
show();
c;
if(c==4){cout<
退出录入成功。
endl;
break;
else
switch(c)
case1:
jiaoshiluru();
break;
case2:
shiyuanyuanluru();
case3:
jianzhi1luru();
default:
{cout<
上一次输入错误。
}break;
3.2.2文件录入函数
voidshuchu()//输出显示
输出顺序为:
编号,名字,工资"
jiaoshishuchu();
shiyanyuanshuchu();
jianzhi1shuchu();
3.2.3文件查询函数
voidwenjianchaxun()//文件查询
show3();
退出查询成功。
jiaoshichaxun();
shiyanyuanchaxun();
jianzhi1chaxun();
3.2.4统计函数
voidtongji()//统计
show4();
退出统计成功。
jiaoshitongji();
shiyanyuantongji();
jianzhi1tongji();
4调试分析及设计体会
4.1相关数据截图
1)菜单截图
2)文件录入截图
3)文件显示截图
4)查询截图
4.2程序调试中的问题
开始对<
fstream>
库不太熟悉,之前没有用过,所以在当使用再程序中始出现过语法错误,后来查询相关资料了解后发现其实所有<
对象都能够把一个文件名当成构造函数的变量,并能够自动的打开文件,如:
std:
ofstreamdictionary("
myfile.txt"
);
使用非常方便。
5.心得体会
这次的课程设计是我第一次通过自己构思,和同学讨论并且不断查阅资料来设计一项程序。
这次设计,不仅巩固了我以前所学的知识,还让我对c语言有了更深一步的了解,掌握了更多的技巧和技能。
C语言是计算机程序设计的重要理论基础,在我们以后的学习和工作中都有着十分重要的地位。
要学好这种语言,仅仅学习课本上的知识是不够的,还要经常自己动手,有较强的实践能力。
只有多动手,经常编写程序,才能发现我们学习上的漏洞和自己的不足,并在实践中解决这些问题,不断提高自己转化知识的能力。
在有解决不了的问题时,我会主动查阅相关的资料,或向其他同学询问,这不仅丰富了我们的知识,还增进了我们同学之间的友谊。
为了增大信息的安全性,需要用文件来存储信息,由于我们在上课时不注重对文件的运用,所以在这方面有较大的困难。
我先将书本认认真真地看了一遍,又做了一下课后习题来验证和增进自己的理解,终于,经过我们的不懈努力,我的程序有了突破,成功地实现了用文件来保存并查看学生的信息。
这次设计中,我的收获还有就是学会了用流程图来表达自己的想法,并根据流程图来逐步实现程序的功能。
开始的时候,我画流程图很是困难,需要一个多小时才能清楚的根据自己的想法画出图来,后来画多了,就更加了解它的功能,十分得心应手,能够比较快而准确的画出来。
6.附录
6.1源代码.
#include<
iostream>
stdlib.h>
string.h>
usingnamespacestd;
inti;
voidTeacher:
display1()
{cout<
请输入"
请输入教师的月工作量(小时):
cin>
}
classShiyanyuan:
classJianzhi1:
voidshow()
请输入你要录入的对象:
1:
教师"
2:
实验员"
3:
教师兼职实验员"
4:
退出录入"
请选择:
voidjiaoshiluru()//教师录入
ofstreamoutfile("
教师.txt"
ios:
app);
if(!
outfile)
cerr<
openerror!
exit(0);
}intb;
请选择你要录入教师的个数:
b;
i<
t[i].display1();
outfile<
t[i].num<
t[i].name<
t[i].score<
t[i].time<
outfile.close();
voidshiyuanyuanluru()//实验员录入
实验员.txt"
请输入你要录入实验员的个数:
s[i].display1();
s[i].num<
s[i].name<
s[i].score<
s[i].buzu<
outfile.close();
voidjianzhi1luru()//教师兼职实验员录入
教师兼职实验员.txt"
请输入你要录入教师兼职实验员的个数:
j[i].display1();
j[i].Teacher:
num<
name<
score<
j[i].buzu<
j[i].time<
voidjiaoshishuchu()//教师输出显示
ifstreaminfile("
in);
intm;
100;
infile>
t[i].num>
t[i].name>
t[i].score>
t[i].time;
if(t[i].num==0)break;
m=t[i].score+(t[i].time-24)*30;
教师:
m<
infile.close();
voidshiyanyuanshuchu()//实验员输出
fstreamiofile("
iofile>
s[i].num>
s[i].name>
s[i].score>
s[i].buzu;
if(s[i].num==0)break;
m=s[i].score+s[i].buzu;
实验员:
iofile.close();
voidjianzhi1shuchu()//教师兼职实验员输出
num>
name>
score>
j[i].buzu>
j[i].time;
if(j[i].Teacher:
num==0)break;
m=j[i].Teacher:
score+j[i].buzu+(j[i].time-12)*30;
教师兼职实验员:
voidshow3()
请输入你要查询的对象:
1:
教师查询"
2:
实验员查询"
3:
教师兼职实验员查询"
4:
退出查询"
请选择一个操作:
voidjiaoshichaxun()
charnam[20];
intm,n;
请输入你要查询教师的名字:
nam;
for(i=0,n=0;
if(t[i].num==0)break;
if(strcmp(t[i].name,nam)==0)
{
n++;
if(n==0)cout<
没有你要查询的教师。
voidshiyanyuanchaxun()//实验员查询
intm,n;
charnam[20];
请输入你要查询实验员的名字:
if(strcmp(s[i].name,nam)==0)
if(n==0)cout<
没有你要查询的实验员。
voidjianzhi1chaxun()//教师兼职实验员查询
请输入你要查询的教师兼职实验员的名字:
cin>
if(strcmp(j[i].Teacher:
name,nam)==0)
m=j[i].Teacher:
没有你要查询的教师兼职实验员。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 程序 课程设计 报告