第一篇:数据库课程设计感想(范文模版)
课程设计感想
学号:051409266 姓名:詹林林
作为工程管理专业的学生,我们专业在大一时的时候学过简单的微机原理和C语言编程。大二开始接触,和了解Access开发平台的时间并不长,这学期在老师和同学的帮助下完成了第一个ACCESS系统——高校公寓管理的测试系统,这其实是我真正意义上接触的第一个程序,第一学期的C语言只能说是了解。说是系统,真的功能还太不完善了。可是自己第一次接受ACCESS的专业系统的培训,总觉得难以胜任。我需要参加一个专业,系统的培训来提高下自己的技术水平,才能更好地完成接下来的工作。就在这样的背景下,我开始向百度求救,查阅大量的资料后,在同学的帮助下开始了Access开发平台课程的学习。并使用Access开发平台完成了河南城建学院高校公寓管理系统。
通过为期一周的设计,使我了解到程序设计绝不仅仅是一个人的事情,它需要大量的人力,脑力参与其中,对程序的每一步骤都要求大家严谨,认真的对待,并且要不断的验算检核,以确保程序的可行性。
这一周,我们克服了重重困难,查阅大量资料后,在老师及相关组员的共同努力下,我们于今天完成了程序系统设计,并且通过了全部组员的验证,这一次的共同努力,增进了我们之间的感情,强化了努力学习的氛围,我相信在哦今后的学习中,我们将因此而受益匪浅!
课程设计感想
学号 051409259
姓名 程鸿杰 一周的ACCESS数据库课程设计就要结束了,收获的知识远超我们的想像,俗话说实践出真知,这句话真的是金玉良言,事必躬亲的道理让我们知道了这种实践性很强的课程想学会真的要多多上机操作,才能更好的掌握知识。
在这周的课程设计中,我们在老师的谆谆指导下,在组长的带领下,在同组人员的帮助下,我们一起努力开发完成了我们的课程设计任务——高校公寓管理系统。在我们完成后,经过我们一组人员的验算运行检核,其基本符合最初设计要求,而我们算是基本完成课程设计任务,我们都感到很欣慰。
一周的课程设计,让我们之间增进了情感,浓厚了学习氛围,让我们也深刻的体会到团结就是力量。互相这一周,真的有太多的不容易,我们三个班有近两百人的学生,可是机房的电脑却很少,远远无法满足上机操作的要求,所以我们很多人再回到宿舍后,用自己的电脑接着做课程设计,虽然我们每天的课只有一节,但是我相信每位同学所耗费的时间远远超过一节课,现在我们圆满完成后,发现当初为之付出的汗水是多么的值得。
即将到来的考试,使我们的精神必须保持一贯的紧张,但是我相信,通过这周的努力,我们所培养出来的那种奋斗执着,严谨求实的态度,会为我们的考试上了一个保险!
第二篇:数据库课程设计内容及感想
数据库课程设计内容及感想(完结)
这次数据库课程设计用的是Microsoft Visual FoxPro 6.0 ,而我们平时用的Microsoft SQL Server 2000,虽然对VFP完全陌生,但在老师的指引下,我们近乎完美的完成了课程设计。当然过程是艰辛的。
面对着完全陌生的操作环境VFP,许多同学开始埋怨,要求用SQL,用我们学过的ASP等来完成设计。但我们慢慢发现用VFP做课程设计其实很有优势,于是它的这个优势激发了我们去了解它的欲望。老师先将VFP中基本的建数据库,建表以及建表单等向我们演示了一遍,我们也仿照着做了,发觉并不是很难。但想到这次课程设计做的是一套学生学籍和成绩管理系统,我们又开始茫然了。那天,老师给我们看了一段可以让文字循环移动的代码,这使我们产生了好奇心理,有了快速了解它的冲动。因为用面向对象的语言做特效,这还是第一次。下课之后我把那段我们不了解的语言写的特效代码发到了VFP论坛上请人帮忙解释,最后我们完全理解了那段代码的意思。
代码如下:
a=ThisForm.label1.Caption&&获得标签1的字符
key=0&&定义数值变量
DO WHILE KEY!=32&&语句循环,直至按下空格(=32)键
al=substr(a,1,2)&&分离出字符变量a中的前两个字符 a=Alltrim(substr(a,3))+al&&去掉首尾空格
ThisForm.label1.caption=a&&将移动后的字符变量重新赋值给标签1将移动后的字符变量重新赋值给标签1
key=inkey(0.5,'H')&&接收键盘输入,0.5表示等待0.5秒,H表示隐藏光标
ThisForm.Refresh&&表单刷新
ENDDO
ThisForm.release&&表单释放
接下来的路并不好走,因为还有很多代码要写,而写这代码的语言以前又没有接触过。习惯了用百度、用Google的我们,只得寻找网络资源了,可是网上并没有和我们一模一样的课程设计源码。我最后找到了和这次课程设计类似的系统的源码,可恶的是,别人做的系统设置有密码,我要看它的效果必须先破译出这套系统的密码,我好不容易找到了密码,却发现更大的未知领域。还好老师后来提示了我和另一个同学一些代码中用到的函数和语句,课后我分析了别人的代码,和班上那位同学一起探索一起尝试,终于成功的完成了“删除”、“修改”、“保存”按钮的代码。
“删除”按钮代码如下:
Delete&&标记当前行,为删除做准备
scyesno=messagebox(“真的要删除吗?”,4+32,“确认”)&&确认窗口
if scyesno=6&&如果确认
USE学生信息 EXCLUSIVE
Pack&&删除
messagebox(“删除成功!”,64,“提示窗口”)&&提示窗口
thisform.refresh&&刷新
else
messagebox(“未删除!”,64,“提示窗口”)&&提示窗口
endif
“修改” 按钮代码:
dimension a(8)&&定义数组
a(1)=thisform.text1.value
a(2)=thisform.text2.value
a(3)=thisform.text3.value
a(4)=thisform.text4.value
a(5)=thisform.text5.value
a(6)=thisform.Optiongroup1.value
a(7)=thisform.check1.value
a(8)=thisform.edit1.value
replace 学生信息.学号 with a(1)&&替换,下同
replace 学生信息.姓名 with a(2)
replace 学生信息.性别 with a(6)
replace 学生信息.出生日期 with a(3)
replace 学生信息.专业 with a(4)
replace 学生信息.入学成绩 with a(5)
replace 学生信息.团员 with a(7)
replace 学生信息.简介 with a(8)
thisform.refresh&&刷新
“保存”按钮的代码:
dimension a(8)
a(1)=thisform.text1.value
a(2)=thisform.text2.value
a(3)=thisform.text3.value
a(4)=thisform.text4.value
a(5)=thisform.text5.value
a(6)=thisform.Optiongroup1.value
a(7)=thisform.Check1.value
a(8)=thisform.edit1.value
replace 学生信息.学号 with a(1)
messagebox(“保存成功!”,64,“提示窗口”)
当然,老师了解了我们的情况后,向我们讲解了几个简单的代码:
“退出”按钮的代码:
thisform.release
“上一步”按钮的代码:
skip-1
if bof()
go top
endif
thisform.refresh
“下一步”按钮的代码:
skip
if eof()
go bottom
endif
thisform.refresh
“添加”按钮的代码:
append blank
thisform.text1.setfocus
thisform.text2.setfocus
thisform.text3.setfocus
thisform.text4.setfocus
thisform.text5.setfocus
thisform.edit1.setfocus
thisform.refresh
上面的代码,后来我们在是否只读方面做过改进,这里就不一一列举。用到的语句是:
thisform.check1.readonly=.t.&&复选框只读
thisform.check1.readonly=.f.&&复选框非只读
成绩表单的代码和上面学籍表单的类似,这里也不列举了。
需要提醒的是,要想在表单中的文本框、编辑框、复选框、ActiveX绑定控件框等里显示对应表里内容,必须在它们“属性”的ControlSource中填对应内容,例如在表单的ActiveX绑定控件框中显示照片,就得把ActiveX绑定控件框的“属性”里的ControlSource内容改为“学生信息.照片”,其他类推。建表单这里就就不再熬述了。
建完表单,接下来是制作报表。建好新报表,首先是添加你要显示的表,例如下面制作的是学生学籍报表,可以通过点右键“数据环境”,再通过在数据环境中点右键,点“添加”选择学生信息表来添加。
这次做的报表涉及到分组,我们做的是按“性别”分组,那么在报表中点右
键里的“数据分组”,在弹出的窗口里的“分组表达式”里填入“学生信息.性别”。
然后再通过在“数据环境设计器”里的学生信息表上点右键,将“属性”里的Order的内容改为“性别”即可。分组的前提是将学生学籍表里的性别设置为“普通索引”。
报表的基本作用是显示表里的信息,另外加上一些统计、计算和页面美化等。例如要显示学号,首先要通过“报表控件”建一个“域控件”选定此“域控件”右键点属性在“表达式”里填如“学生信息.学号”(如下图)。
要统计男、女人数同样要通过“报表控件”建一个“域控件”选定此“域控件”右键点属性在“表达式”里填如“学生信息.学号”。再点“计算”在“计算字段”里的“计算”里选“计数”(如下图)。
下面是这次建的报表之一,处在编辑状态下。报表的美化这里就不再作说明了。
下面讲一下,表单跳转,报表预览命令:
表单跳转命令:
DO FORM E:计科(2)20学生学籍表单.scx
上面的命令是:跳转到学生学籍表单,这里的“E:计科(2)20学生学籍表单.scx”可以直接写成“学生学籍表单”,前提是你把默认路径改为E:计科(2)20了。
报表预览命令:
report form 学生学籍报表.frx preview
上面的命令是:跳转到学生学籍报表的预览状态。
另外就是建菜单以及菜单的使用了,这里要特别说明.mpr菜单是如何得来的。在建完菜单以后,我们要用到“do 菜单名.mpr”命令来显示我们事先建好的菜单,但我们会发现,建完菜单之后,只有两个菜单文件,其中并没有扩展名为.mpr的菜单文件。其实,另两个菜单文件是点运行之后生成的(当然.mpr的菜单就包括在里面),如下图所示:
完成上面的工作就得开始写主控程序了,我们用到的是修改了别人的程序并
且融入了自己内容的:
set talk off&&关闭对话模式
set safe off
set stat off
set dele on&&不处理已删除的记录
set cent on
set date to ansi
close all
RELEASE WINDOW 常用&&关闭常用工具栏
if mod(day(date()),2)=0&&偶数日期
_SCREEN.backcolor=rgb(80,222,180)&&窗口背景颜色
MODIFY WINDOW SCREEN TITLE “ 学生学籍和成绩管理系统 ver1.0;
XX大学;05计科(2)XXX今天是:”+dtoc(date())+“"+cdow(date())
else&&奇数日期
_SCREEN.backcolor=rgb(80,150,180)&&窗口背景颜色
MODIFY WINDOW SCREEN TITLE ” 学生学籍和成绩管理系统 ver1.0;
软件编制者:计科(2)XXX今天是:“+dtoc(date())+”“+cdow(date())
endif
ZOOM WINDOW SCREEN MAX&&主窗口最大化
_SCREEN.controlbox=.t.&&去掉主窗口控制按钮
deactivate window ”项目管理器“&&关闭项目管理器
mypath=left(sys(16),rat(”",sys(16)))&&确定程序所在的位置
set defa to(mypath)&&设置当前路径
set path to data;form;pic;prog&&指明路径
open database 学生成绩&&打开数据库
do form 表单1&&运行表单1
do 菜单.mpr
read events
quit
完成上面所有的工作之后就只剩下“连编”这一步了。如下图所示,点击“连编”进入下一个界面。
依次连编“操作”中的四项,当然“选项”中相应的有必要打勾的,在点确定前要先打勾。
感想:
这次课程设计我们克服了炎热的天气(学校机房之前没装空调„„后来设计完才装„„),也克服对新知识的恐惧感以及畏难情绪。我们懂得了团队合作的重要性,也懂得了团队中如何交流、如何分工,如何集体讨论难点。我们充分利用了网络资源(技术论坛,共享的实例等)。
我们喜欢这次课程设计的感觉,喜欢编程,喜欢团队交流。
(之前挂在学校论坛的截图由于学校论坛的更新而丢失,后来重新整理到博客相册了。)
第三篇:数据库课程设计
数据库课程设计
第一章 引言
开发的意义
设计应用系统的任务及目标 设计开发及运行的软硬件环境
第二章 系统分析与设计
系统需求分析
数据库概念结构设计 数据库逻辑结构设计 数据库物理结构设计 系统总体结构设计
第三章 系统开发及实现
设计开发采用的技术及设计效果
第四章 总结
第四篇:数据库课程设计
需求分析
在银行业务模拟中用随机函数产生随机数,求客户在银行的平均时间,客户来到银行后加入两个队列,客户办理的业务有两种,一是取款和贷款,二是存款和还款。概要设计
typedef struct service { int num;//客户号 string type;//到达或离开 int beginTime;int endTime;int money;//正数为存款,负数为取款 struct service* next;}service;typedef struct //队列 { service* head;service* rear;}queue;int total;//初始时银行现存资金总额 int closeTime;//营业结束时间
int arriveTime;//两个到达事件之间的间隔上限 int dealTime;//客户交易的时间上限 int dealMoney=5000;//交易额上限 int currentTime=0;//当前时间 int totalTime=0;//客户逗留总时间 int counter=0;//客户总数 int number=1;//初始客户序列号 int currentTimeOfDeal=0;int theArriveTime=0;queue eq;//事件队列 queue fq;//队列一
queue sq;//对列二 //初始化三个队列 service* temped;int Time;void push(queue &q,int a)// 插入元素a为Q的新的队尾元素 void pop(queue &q)// 若队列不空,出对列函数 service* front(queue &q)//返回队首元素 service* back(queue &q)//返回队尾元素
service* searchAndDel(queue &q,int m)//在对列中寻找可处理元素 bool state=1;//用于判断是否有窗口在处理
void arrive()//“到达”函数 随机产生顾客,进入队列一产生到达事件 进入事件队列
void putMoney()//存款函数 void getMoney()//取款函数
void findAndDeal()//在对列中寻找可处理元素,对其进行处理 运行环境
Window XP Visual C++ 开发工具和编程语言
Visual C++ C++ 详细设计
1.队列的链式表示和实现 typedef struct service { int num;//客户号
string type;//到达或离开 int beginTime;int endTime;int money;//正数为存款,负数为取款 struct service* next;}service;typedef struct //队列 { service* head;service* rear;}queue;2.插入一个元素为队尾元素 void push(queue &q,int a){ service* p=new service;p->money=a;p->next=NULL;if(q.head==NULL)//列队为空,初始化 { q.head=p;q.rear=p;} else //队列不为空,插入元素a { q.rear->next=p;q.rear=q.rear->next;} } 3.返回函数
service* front(queue &q)//返回队首元素 { return q.head;} service* back(queue &q)//返回队尾元素 { return q.rear;} 4.在对列中寻找可处理元素
service* searchAndDel(queue &q,int m){ service* sign=q.head;//标记头节点 service* p;while(q.head!=NULL){ if((-(q.head->money)) { p=q.head;q.head=q.head->next;//首节点后移一位,返回原首节点 return p;} } if((-(q.head->money))>m)//队首元素不能被处理 { if(q.head==q.rear){ } return NULL;else //首节点移到队列尾部 { q.rear->next=q.head;q.rear=q.rear->next;q.head=q.head->next;q.rear->next=NULL;} } if(q.head==sign)//队列循环一周时停止 return NULL;} return NULL;} 5.到达函数 void arrive()//到达“函数 随机产生顾客,进入队列一产生到达事件 进入事件队列 { push(fq,(rand()%(2*dealMoney)-dealMoney));//随机产生顾客加入第一队列 back(fq)->beginTime=currentTime;back(fq)->num=number;push(eq,(back(fq)->money));//将产生事件加入事件队列 back(eq)->beginTime=currentTime;back(eq)->type=”到达“;back(eq)->num=number;++number;} 6存款函数 void putMoney(){ total+=front(fq)->money;//更新资金总额 push(eq,front(fq)->money);//加入事件队列 离开 back(eq)->type=”离开“;back(eq)->num=front(fq)->num;back(eq)->endTime=(front(fq)->beginTime+rand()%dealTime+1);++counter;//更新客户总数 totalTime+=(back(eq)->endTime-front(fq)->beginTime);//更新逗留时间 pop(fq);//删除第一队列第一个业务 currentTimeOfDeal=back(eq)->endTime;state=0;} 7取款函数 void getMoney()//取款函数 { if((-fq.head->money)>total)//资金短缺 加入第二队列 { push(sq,front(fq)->money);back(sq)->beginTime=front(fq)->beginTime;back(sq)->num=front(fq)->num;pop(fq);6 } else { total=total+back(fq)->money;push(eq,front(fq)->money);//加入事件队列离开 back(eq)->type=”离开“;back(eq)->num=front(fq)->num;back(eq)->endTime=(front(fq)->beginTime+rand()%dealTime+1);back(eq)->beginTime=0;currentTimeOfDeal=back(eq)->endTime;++counter;//更新客户总数 totalTime+=(back(eq)->endTime-back(fq)->beginTime);//更新逗留时间 pop(fq);//删除第一队列第一个业务 state=0;} } 8.在对列中寻找可处理元素,对其进行处理 void findAndDeal(){ while((temped=searchAndDel(sq,total))&&NULL!=temped)//查找可处理取款 { total+=temped->money; totail=total+temped->money;push(eq,temped->money);//加入事件队列训 离开 back(eq)->type=”离开“;back(eq)->num=temped->num;randomTemp=rand()%dealTime+1; //更 新资 金总额 7 back(eq)->endTime=currentTime+randomTemp;currentTimeOfDeal+=randomTemp;++counter;//更新客户总数 totalTime+=(back(eq)->endTime-temped->beginTime);//更新逗留时间 delete temped;//删除节点 temped=NULL;} state=0;} 9 主函数 int main(){ int m;cin>>m;if(m=111111){ cout<<”欢迎进入系统< srand(time(NULL));//初始化随机函数 cout<<”输入银行的初始存款:n“;cin>>total;cout<<”输入银行的营业时间:n“;cin>>closeTime;8 cout<<”输入最大到达时间间隔:n“;cin>>arriveTime;cout<<”输入最大的处理时间:n“;cin>>dealTime;theArriveTime+=rand()%arriveTime+1;//首次到达时间 while(currentTime } cout< } if(state==1&&fq.head!=NULL){ } if(fq.head->money>=0){ } else getMoney();putMoney();findAndDeal();arrive();theArriveTime+=rand()%arriveTime+1;9 <<”事件类型“<<”tt“ <<” 时间“<<”t“ <<” 处理金额“< } cout<<”未处理客户:“<<”“< < < cout< } } cout<<”银行当前余额:"< 在用随即函数rand产生随机数的时候,对其初始化用srand(time(NULL),为了使得产生的随机数是整数要在后面加一 测试结果 如图一所示为输入密码进入系统后 图一输入密码进入系统后 如图二为输入银行的初始存款,营业时间,两个到达事件的最大间隔,客户交易的最大时间 图二输入各项信息后 如图三所示产生的客户信息 图三 客户的信息(到达时间和离开时间,平均在的时间) 参考文献 [1] 吴文虎,程序设计基础(第二版),北京,清华大学出版社 [2] 谭浩强,C语言程序设计,北京,清华大学出版社 [3] 边肇祺,模式识别(第二版),北京:清华大学出版社 [4] 李永忠,几种小波变换的图像处理技术,西北民族学院学报,自然科学版 [5] 严蔚敏,吴伟民,米宁,数据结构题集(c语言版),清华大学出版社 心得体会 转眼之间,来到大学已经一年半的时间了,对程序的学习也有了初步的认识,在大一的时候学习了程序设计,大二紧接着又学了数据结构,在这次的课程设计中,遇到了一些问题,通过老师和同学的帮助得到了解决,并且对程序设计的认识又提高了一个层次,在以后的学习中,对经常出现的问题会更加注意。 这次的课程设计给了我很大的帮助,在过程中学到了很多的知识,对程序的规范性以及有效性更加的重视。在以后编程序的过程中会更加注意程序的完善性,使程序的功能更加的齐全,而这也是作为一个程序设计师必须要具备的。认识到只有多多的练习才能更好的运用所学习的知识。在大学里要充分的利用各种资源,提高自己的水平。 数据库课程设计心得体会 一周的课程设计结束了,在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情的方法和技巧。在设计过程中,和同学们相互探讨,相互学习,相互监督。我学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世,这次课程设计对我来说受益良多。 课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程。“千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义。我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础。我这次设计的科目是数据结。 数据结构,是一门研究非数值计算的程序设计问题中计算机的操作对象(数据元素)以及它们之间的关系和运算等的学科,而且确保经过这些运算后所得到的新结构仍然是原来的结构类型。“数据结构”在计算机科学中是一门综合性的专业基础课。数据结构是介于数学、计算机硬件和计算机软件三者之间的一门核心课程。数据结构这一门课的内容不仅是一般程序设计(特别是非数值性程序设计)的基础,而且是设计和实现编译程序、操作系统、数据库系统及其他系统程序的重要基础。通过这次模具设计,我在多方面都有所提高。 在界面设置中使用函数调用while。其中文本显示颜色和背景颜色都可以任意按照自己的喜好,任意改变,但改变的时候必须采用标准英文大写,同时在制作显示菜单的窗口,大小根据菜单条数设计。最后采用printf输出程序设计界面。 这次的程序软件基本上运行成功,可以简单的建立链式循环链表,并进行输出,及循环语句的运用和选择语句的控制。由于时间和知识上的限制,使得程序规模相对较小,即功能还不很全面,应用也不很普遍。原来C语言可是涉及很多知识,而不是枯燥无聊的简单的代码部分而已,利用C语言方面的知识,我们可以设计出更完善的软件。 通过这次的课程设计,更是让我深刻认识到自己在学习中的不足,同时也找到了克服这些不足的方法,这也是一笔很大的资源。在以后的时间中,我们应该利用更多的时间去上机实验,加强自学的能力,多编写程序,相信不久后我们的编程能力都会有很大的提高能设计出更多的更有创新的作品。 在我看来,数据库课程设计主要的目标是利用课程中学到的数据库知识和技术较好的开发设计出数据库应用系统,去解决各行各业信息化处理的要求。通过这次的课程设计,可以巩固我们对数据库基本原理和基础理论的理解,掌握数据库应用系统设计开发的基本方法,进一步提高我们综合运用所学知识的能力。 当我们这组决定做大学生就业咨询系统时,我们并没有着手写程序。而是大家一起商量这个系统概述、系统目标、系统需求、业务流程分析、数据流程分析和数据词典。当这些都准备好了之后,我们进行模块的分工。每个人都有自己的模块设计,而且写出来的代码要求可以实现相应模块的功能,得到理想的效果。当每个人都把自己的分工做好了,最后会由一个人把这些全部组合搭建在一起。我们使用的是html和php相互嵌套使用,当一个系统做好了之后,我会好好地把程序都看一遍,理会其中的奥秘。 我所负责的是数据库的备份和还原还有一些界面的实现。还记得自己刚接触html的时候,觉得很感兴趣,所以有一段时间几乎到了痴迷的程度。然而php是我刚接触不久的一种编程语言。不过觉得它的功能真的很强大,可以开发出很多大型的系统。但是在做备份和还原的时候,要考虑的东西还是很多的。当我遇到错误的时候,感到很受打击。值得欣慰的是,在同学的帮助和大量参考书的查阅下,我把自己的模块做好了。这就是我收获最大的地方。而且,我明白了遇到困难永不放弃的重要性,我知道了团队合作的重要性,我领悟了只有坚持不懈才会取得胜利。 知识的获得是无止境的,只要你想学,只要你行动,没有什么会难倒我们的。回首这一个多星期的课程设计,我很欣慰。因为我有了动力,有了勇气。谢谢老师对我们的不懈帮助,谢谢学校给了我们这一次实践的机会,也谢谢组员们的关怀。这些美好的回忆美好的东西将永远伴随着我。 本次课程设计,使我对《数据结构》这门课程有了更深入理解。《数据结构》是一门实践性较强课程,为了学好这门课程,必须在掌握理论知识同时,加强上机实践。 我课程设计题目是线索二叉树运算。刚开始做这个程序时候,感到完全无从下手,甚至让我觉得完成这次程序设计根本就是不可能,于是开始查阅各种资料以及参考文献,之后便开始着手写程序,写完运行时有很多问题。特别是实现线索二叉树删除运算时很多情况没有考虑周全,经常运行出现错误,但通过同学间帮助最终基本解决问题。 在本课程设计中,我明白了理论与实际应用相结合重要性,并提高了自己组织数据及编写大型程序能力。培养了基本、良好程序设计技能以及合作能力。这次课程设计同样提高了我综合运用所学知识能力。并对VC有了更深入了解。《数据结构》是一门实践性很强课程,上机实习是对学生全面综合素质进行训练一种最基本方法,是与课堂听讲、自学和练习相辅相成、必不可少一个教学环节。 上机实习一方面能使书本上知识变“活”,起到深化理解和灵活掌握教学内容目;另一方面,上机实习是对学生软件设计综合能力训练,包括问题分析,总体结构设计,程序设计基本技能和技巧训练。此外,还有更重要一点是:机器是比任何教师更严厉检查者。因此,在“数据结构”学习过程中,必须严格按照老师要求,主动地、积极地、认真地做好每一个实验,以不断提高自己编程能力与专业素质。 通过这段时间课程设计,我认识到数据结构是一门比较难课程。需要多花时间上机练习。这次程序训练培养了我实际分析问题、编程和动手能力,使我掌握了程序设计基本技能,提高了我适应实际,实践编程能力。总来说,这次课程设计让我获益匪浅,对数据结构也有了进一步理解和认识。 两个星期时间非常快就过去了,这两个星期不敢说自己有多大进步,获得了多少知识,但起码是了解了项目开发部分过程。虽说上过数据库上过管理信息系统等相关课程,但是没有亲身经历过相关设计工作细节。这次实习证实提供了一个很好机会。 通过这次课程设计发现这其中需要很多知识我们没有接触过,去图书馆查资料时候发现我们前边所学到仅仅是皮毛,还有很多需要我们掌握东西我们根本不知道。同时也发现有很多已经学过东西我们没有理解到位,不能灵活运用于实际,不能很好用来解决问题,这就需要我们不断大量实践,通过不断自学,不断地发现问题,思考问题,进而解决问题。在这个过程中我们将深刻理解所学知识,同时也可以学到不少很实用东西。从各种文档阅读到开始需求分析、概念结构设计、逻辑结构设计、物理结构设计。亲身体验了一回系统设计开发过程。很多东西书上写很清楚,貌似看着也很简单,思路非常清晰。但真正需要自己想办法去设计一个系统时候才发现其中难度。经常做到后面突然就发现自己一开始设计有问题,然后又回去翻工,在各种反复中不断完善自己想法。 我想有这样问题不止我一个,事后想想是一开始着手做时候下手过于轻快,或者说是根本不了解自己要做这个系统是给谁用。因为没有事先做过仔细用户调查,不知道整个业务流程,也不知道用户需要什么功能就忙着开发,这是作为设计开发人员需要特别警惕避免,不然会给后来工作带来很大的麻烦,甚至可能会需要全盘推倒重来。所以以后课程设计要特别注意这一块设计。 按照要求,我们做是机票预订系统。说实话,我对这个是一无所知,没有订过机票,也不知道航空公司是怎么一个流程。盲目开始设计下场我已经尝过了,结果就是出来一个四不像设计方案,没有什么实际用处。没有前期调查,仅从指导书上那几条要求着手是不够。 在需求分析过程中,我们通过上网查资料,去图书馆查阅相关资料,结合我们生活经验,根据可行性研究结果和客户要求,分析现有情况及问题,采用Client/Server结构,将机票预定系统划分为两个子系统:客户端子系统,服务器端子系统。在两周时间里,不断地对程序及各模块进行修改、编译、调试、运行,其间遇到很多问题:由于忘记了一些java语言规范使得在调试过程中一些错误没有发现,通过这次课程设计,我对调试掌握得更加熟练了,意识到了程序语言规范性以及我们在编程时要有严谨态度,同时在写程序时如有一定量注释,既增加了程序可读性,也可以使自己在读程序时更容易。 我们学习并应用了SQL语言,对数据库创建、修改、删除方法有了一定了解,通过导入表和删除表、更改表学会了对于表一些操作,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价一般过程,为毕业设计打下基础。 很多事情不是想象中那么简单,它涉及到各种实体、属性、数据流程、数据处理等等。很多时候感觉后面设计根本无法继续,感觉像是被前面做各种图限制了。在做关系模型转换时候碰到有些实体即可以认为是实体又可以作为属性,为了避免冗余,尽量按照属性处理了。 物理结构设计基本没有碰到问题,这一块和安全性、完整性不觉就会在物理结构设计中添加一些安全设置:主键约束、check约束、default定义等。最后才做索引部分,对一些比较经常使用搜索列,外键上建立索引,这样可以明显加快检索速度,最后别忘记重要安全性设置,限制用户访问权限,新建用户并和数据库用户做相应映射。 不管做什么,我们都要相信自己,不能畏惧,不能怕遇到困难,什么都需要去尝试,有些你开始认为很难事在你尝试之后你可能会发现原来她并没有你以前觉得那样,自己也是可以。如果没有自信,没有目标,没有信心就不可能把事情做好,当其他人都在迷茫时候,自己一定要坚信目标,大学毕业出去即面临找工作,从学习这个专业,到以后从事这方面工作都需要不断地去学习去实践,这次实践可以给我们敲一个警钟,我们面临毕业,面临择业,需要这些实践经验,在困难面前要勇于尝试,这是这次课程设计给我最大感想! 以上基本是这次实习体会了,设计进行非常艰难,编码非常不容易,才发现做一个项目最重要不在于如何实现,而是实现之前需求分析和模块设计。创新很难,有些流行系统其实现并不难,难在于对市场分析和准确定位。设计,是一个任重道远过程。 在我看来,数据库课程设计主要目标是利用课程中学到数据库知识和技术较好开发设计出数据库应用系统,去解决各行各业信息化处理要求。通过这次课程设计,可以巩固我们对数据库基本原理和基础理论理解,掌握数据库应用系统设计开发基本方法,进一步提高我们综合运用所学知识能力。 当我们这组决定做大学生就业咨询系统时,我们并没有着手写程序。而是大家一起商量这个系统概述、系统目标、系统需求、业务流程分析、数据流程分析和数据词典。当这些都准备好了之后,我们进行模块分工。每个人都有自己模块设计,而且写出来代码要求可以实现相应模块功能,得到理想效果。当每个人都把自己分工做好了,最后会由一个人把这些全部组合搭建在一起。我们使用是Html和php相互嵌套使用,当一个系统做好了之后,我会好好地把程序都看一遍,理会其中奥秘。 我所负责是数据库备份和还原还有一些界面实现。还记得自己刚接触html时候,觉得很感兴趣,所以有一段时间几乎到了痴迷程度。然而Php 是我刚接触不久一种编程语言。不过觉得它功能真很强大,可以开发出很多大型系统。但是在做备份和还原时候,要考虑东西还是很多。当我遇到错误时候,感到很受打击。值得欣慰是,在同学帮助和大量参考书查阅下,我把自己模块做好了。这就是我收获最大地方。而且,我明白了遇到困难永不放弃重要性,我知道了团队合作重要性,我领悟了只有坚持不懈才会取得胜利。知识获得是无止境,只要你想学,只要你行动,没有什么会难倒我们。回首这一个多星期课程设计,我很欣慰。因为我有了动力,有了勇气。谢谢老师对我们不懈帮助,谢谢学校给了我们这一次实践机会,也谢谢组员们关怀。这些美好回忆美好东西将永远伴随着我。 时间真的如轮一样在飞转,一周的实训又一次即将结束,可是,感觉仿佛只过去了一天。实训结束也意味着这个学期也将结束。不管时间多么的飞快,这周短暂的VB程序设计实训同样让我们收益不少。首先,不说我们学到了多少专业知识,也不说我们学到了多少专业技能。在这样零下1度的天气中实训,着实是锻炼我们的意志力。人都有惰性,这是无可厚非的事实。在寒冷的'天气里,赖床就更是常有的事。因为要实训,我们很多平常经常迟到的同志不得不早起。就说实训的第一天,外面飘着白雪,早上,手机的闹铃已经响过第二遍了。 我们宿舍的几个姐妹还躲在被窝里无动于衷。可是,当一个姐们突然说了一句,“这周要实训”时,我们都‘呼啦’爬了起来,以惊人的速度洗漱好,急忙赶到教室。不管平时多么懒散的同学,这次实训都表现的异样的认真。这应该算是实训赋给我们的特别礼物吧!实训的目的无非就是训练我们的操作能力,以及提高我们的专业技能。实践出真知,这是不变的真理。毫无疑问,这次VB程序设计实训让我们每一位同学都在不同程度上提高了编程技能。编程是我们的专业课程,可是,在老师平时上课的时候,班上大部分同学都以怠慢的态度对待。所以,对这门课程学的泛泛的。 实训前,如果要我们做一个管理系统,我想班上能完成任务的同学应该寥寥无几。在实训前,我们常抱怨,编程有多么的难。一个学期的学习,我们居然都不能完全的做出一个管理系统来。而这次短短的实训,却让我们学会了做管理系统。没错,就是短短的几天,我们每位同学都完成了一个自己做的管理系统。这说明,编程它本身不是很难,而在于你是不是真正的学习了。这次实训让我深刻的明白,你的态度决定一切。就以我自己的经历来说,一个学期的学习还没没短短一周学到的多。这是为什么?主导因素就是态度。在平日的学习中,我抱着不以为然的态度,以懒散的心态对待这门课程。所以,一个学期下来,我的编程学的一塌糊涂。而这次实训,就像是一场实战,必须认真对待。而这几天踏踏实实的学习,将我平日落下的学习全都补救过来了。真的非常感谢这次实训。通过这次实训,我的编程技能确比之前实提高了不少。 更重要的是,在这次实训中,让我明白:学习或生活中发现了自己的不足,就要及时改进。不管是在学习中,还是在生活中,有不懂的没关系。而,如果不懂,也不去问,就是一件很悲哀的事情。这次实训中,我遇到了很多不懂的问题,但是,这些不懂最后都被我弄懂了。因为遇到不懂的不会做的我及时主动询问了周围的同学。同学不懂的,我又询问了老师。不要认为问别人是一件让人很羞耻的事情。不懂就问,不但不会让你蒙羞,反而能显示你的真实与谦虚。 总之,这次实训我又有不少新收获。 最后,还要感谢这次实训期间周围同学的热情帮助和老师的热心讲解与指导。第五篇:数据库课程设计心得体会