C语言生产实习报告Word下载.docx
- 文档编号:16314254
- 上传时间:2022-11-22
- 格式:DOCX
- 页数:20
- 大小:512.33KB
C语言生产实习报告Word下载.docx
《C语言生产实习报告Word下载.docx》由会员分享,可在线阅读,更多相关《C语言生产实习报告Word下载.docx(20页珍藏版)》请在冰豆网上搜索。
2012.7.8星期日
今天我们选了实训方向,了解了实训的内容及大致的实训安排,并进行了分班。
认识了我们的班主任,周老师,以及我们的授课考试,郭老师。
2012.7.9星期一
昨天我们做了简单的认识,今天开始就正式进入了实训。
首先是早操,7:
00集合。
因为今天是第一天,所以教官让我们熟悉下队形,以及跑步路线。
大概15分钟左右。
8:
30在早操的位置集合,集体去教室上课,也许是第一天吧!
有老师在门口迎接我们,有点受宠若惊……今天初步讲了下我们C++实训期间的安排,第一周,做“通讯录系统”,在剩下的两周内,完成“画板”。
讲了些项目制作的大致流程。
“需求分析”、“概要设计”、“程序实现”。
2012.7.10星期二
今天正式进入“通讯录系统”的项目制作。
上课前,老师先检查了个别同学的“通讯录系统”的需求分析,指出了其中存在的问题,并加以改正。
然后开始就是通讯录的系统设计了,今天完成了“通讯录系统”的大的框架设计,以及其需要的结构体设计。
在这当中,由于我们普遍基础都比较差,老师边讲边为我们补基础,使我们能够听懂。
下午和晚上则是自习,完成上午留下的BUG及作业联系。
2012.7.11星期三
和往常一样,起床,跑步,吃早餐,上课。
上课前,老师先带着我们复习一下昨天所讲的内容,然后进入今天的课程。
今天讲了通讯录的“添加记录”功能。
C语言的规则是,自顶向下,逐步细化。
对于今天要讲的添加功能,首先我们要开辟内存,存放数据,然后接收数据,最后链接到链表中。
这里又需要一些链表的知识,老师都一一带着我们复习下,讲了遍。
今天还不错,都跟上了。
2012.7.12星期四
今天做了“浏览记录”和“查找记录”这个模块,涉及到了遍历链表的知识结构。
另外,遍历链表在后面的“修改记录”和“删除记录”模块都要用到,所以需把其封装成函数,以便后续的模块的调用。
2012.7.13星期五
时间真快,转眼周五了,由于我们普遍基础都很差,所以进度慢了许多,原计划这周完成通讯录系统的,但今天才做完查找“修改记录”。
依然按着自顶向下,逐步细化的思想。
修改记录分为“按姓名修改”和“按号码修改”。
其都需要调用之前封装的函数。
先找到要修改的信息,然后填写修改后的信息。
生产实习日志(第二周)
2012.7.16~7.21
2012.7.16星期一
休息了两天,感觉今天没有上周状态好了。
也许是因为今天下雨吧!
今没出操。
和往常一样,上课前先回顾下上节课讲的内容,然后再进行新的内容。
今天做的是“删除记录”和“排序记录”。
“删除记录”和“修改记录”差不多,所以讲的就快些。
今天的重点是讲排序。
老师教我们的方法是“冒泡排序”的方法。
以前数据结构中学过。
但只做了按号码升序、降序,并没有像手机里那样,有按姓名排序的功能。
也许是时间的原因吧!
2012.7.17星期二
今天是为“通讯录系统”答辩。
我们一共八组。
由于大家基本都是跟着老师做的,功能都差不多,所以老师强调了下,尽量把自己的特色表现出来,有的组添加了音乐功能,有的添加了颜色功能。
八个组的代表在台上都还不错,个别出点小错误,老师都帮着改正了。
在大家答辩结束后,老师纠正强调了一些我们存在的问题。
下午我们的任务就是补全通讯录的“需求分析”“概要设计”“答辩PPT”。
2012.7.18星期三
通讯录系统的项目结束了,今天开始准备PaintBoart系统设计的项目。
今天老师主要是对这个项目进行了介绍,所需要用到的知识点。
给我们简单大致的介绍了一遍,画板所要用到的是API。
对于我们这些基础较差的,这个要很难,不容乐观。
2012.7.19星期四
今天正式进入画板的代码编程阶段,今天的任务是绘制窗口,利用API来做。
这里讲了一个新的知识点,就是句柄。
另外也需要定义一些结构体,由于是用API做,系统有已定义好的结构体,直接调用就可以,但老师还是耐心的为我们讲了一遍这个结构里里的内容,尽量让我们都能跟上,听懂。
2012.7.20星期五
昨天已经把画板的窗口创建出来,今天并没有编写代码,而是为我们讲解了在窗口里,各个操作是以怎样的形式传递,实现的。
窗口操作是以消息的形式传递的,在系统初期,就会为其预置一定空间的内存,用户操作后,会把消息传递到预置的内存中,在有程序一一获取,在交给回调函数处理。
2012.7.21星期六
昨天已把窗口消息传递的过程讲解清楚,今天就要对其实现了,今天把画板的主框架都完成了,包括注册窗口类,创建窗口,显示窗口,更新窗口以及回调函数的设计,包括初期窗口中的各个参数。
另外,还用消息盒子,试着显示一些提示信息。
用实例为我们讲解其中传递的过程,以及其显示的效果。
生产实习日志(第三周)
2012.7.23~7.
2012.7.23星期一
休息了一天,又回到紧张的学习中。
和往常一样,回顾下之前讲的内容,之后,进入今天的内容。
添加窗口菜单,以及一些ID的设置。
这样,一个画板系统的雏形就出来了。
下午我们进行了拓展训练,有抱团,单脚跑等等,都是考验锻炼我们团队协作能力的。
最后还有一个考验我们互相信任度的游戏。
通过这一下午的互动,我们大家都互相熟悉了解了许多,也很开心。
2012.7.24星期二
上午,老师带着我们把窗口里画图操作的各个功能进行了完善与实现,包括图形的选择,颜色,宽度,填充色的设置等等。
晚上进行了乒乓球比赛,我们班很强,尤其那个女生,比很多男生打的都好,很自信。
今天打的是团体和女子单人。
我们班包揽了冠军,值得庆贺。
2012.7.25星期三
今天上午,我们进行了考试,试卷看着不难,很基础,但涉及到编程,还是迷糊。
大概10点半结束考试,交卷。
由于昨天我们班包揽了冠军,此次培训的负责人陈老师,来为我们颁奖,表示鼓励,奖品是几个大西瓜。
接下来的任务就是我们大家就一起努力消灭这些西瓜。
另外上午的时候,学校的龚老师,谌老师,来看我们了,看我们学的怎么样,另外商量一下实训结束,大家返校的安排。
2012.7.26星期四
今天老师讲了画板里的图形重绘功能,补全了一些功能,但感觉讲课速度明显的比以前快了。
跟着做完重绘功能,老师讲了讲文件菜单功能的补全方法,有新建、打开、保存等等,但没带我们写代码,要我们下午和晚上去做。
下午自己试着做做,代码编完,软件调试没有错,但一运行到文件菜单的功能就会出错关闭。
一直也没解决,只能等明天老师帮忙了。
2012.7.27星期五
由于进度问题,老师讲课没有时间带着我们写代码了,所以留下挺多问题。
今天完善了菜单的功能。
包括“新建”“打开”“保存”“另存为”“退出”。
这里有些知识点都是以前讲通讯录讲过的,另外,老师昨天已经把代码发给我们看了,今天老师用了一上午的时间,把这些都给我们讲了遍。
由于我们之前做的是用C做的,而老师给的是用C++做的。
再连接的时候,出了很多问题。
下午则是改正问题。
2012.7.28星期六
今天PaintBoard系统设计代码编程阶段算是结束了,今天把图形的选取及图像属性的功能完善了。
这里涉及的知识点是热点区域的存储及选择。
下午的任务是做PaintBoard的“需求分析”“概要设计”“答辩PPT”。
为明天的答辩做准备。
2012.7.29星期日
时间过的真快,转眼,为期三周的实训就要结束了,今天是实训的最后一天,我们要对之前所做的PaintBoard系统设计进行答辩。
生产实习报告
题目PaintBoard系统设计
学院:
专业:
班级:
学生姓名:
学号:
目录
1、需求分析
2、系统设计
3、设计效果
4、总结
5、心得体会
一、需求分析
摘要
该系统主要根据用户的需求并从用户的角度对画板系统的各个功能进行简要的分析介绍。
通过用例图描述了各模块间的关系,并对用户操作界面进行了一个简单的界面设计,以便用户操作简便。
用例图
DIAGRAM0用例图
用例描述
表格1:
用例名称
File
为用户提供创建、打开、保存、退出程序等功能。
主要流程
1>
New:
创建新文件
2>
Open:
打开文件
3>
Save:
保存文件
4>
SaveAs:
保留原有文件,另存当前文件
5>
Exit:
退出程序
参考文件
表格2:
Image
提供选择画图工具。
Rectangle:
矩形工具
Line:
线
Null:
无形状
Circle:
圆形
Elliple:
椭圆
表格3:
PenWitdth
设置画笔宽度。
“2”画笔宽度为2个单位。
“3”画笔宽度为3个单位。
表格4:
PenColor
设置画笔颜色。
Red:
红色
Blue:
蓝色
表格5:
BlushColor
设置填充颜色。
红色。
Green:
绿色。
表格6:
Delete
提供修改删除功能。
Delete:
删除单个操作。
DeleteAll:
全部删除。
界面原型
DIAGRAM1主菜单界面
DIAGRAM2绘图展示
DIAGRAM3新建
DIAGRAM4打开
DIAGRAM5保存
DIAGRAM6另存为
DIAGRAM7删除
二、概要设计
接口设计
1.用户接口:
无
2.外部接口:
内部接口
BOOLInitList(NODE**aHead);
voidDestoryList(NODE*aHead);
voidClearList(NODE*aHead);
BOOLCreateNewFile(NODE*aHead,HWNDaHwnd);
BOOLIsSave(HWNDaHwnd);
voidReDraw(HWNDhWnd,
HDChdc,NODE*aHead);
voidSaveHotRegion(NODE*ap,HR*arr,
intindex);
voidEntryShapeElem(HWNDhWnd,
WPARAMwParam,NODE*CurrentNode,
HR*arr,INT*index);
INTInHotRegion(POINT*pt,HR*arr,
intindex);
INTSelectImage(HWNDahWnd,NODE*aHead,INTaNumberOfImage);
BOOLDrawFinishPoint(HWNDhWnd,NODE*ptr);
BOOLDeleFinishPoint(HWNDhWnd,NODE*aHead,INTaNumberOfImage);
数据接口设计
1.逻辑结构设计
typedefstructmessage()
{
HWNDhWnd;
UINTmessage;
LPARAMlParam;
WPARAMwParam;
POINTpoint;
DWORDtime;
}MSG,*PMSG;
typedefstructNode
SHAPETYPEm_ImageType;
COLORREFm_PenColor;
INTm_PenWidth;
COLORREFm_BrushColor;
POINTm_SourcePoint;
POINTm_DestPoint;
BOOLm_FinishPoint;
structNode*m_pNext;
}NODE;
typedefstructtagFILEHEADER
WORDbfType;
intbfSize;
DWORDbfOffBits;
}FILEHEADER;
typedefstructHotRegion
HRGNHotRegionHandle;
POINTSourcePoint;
POINTDestPoint;
}HR;
2.物理结构设计
采用链表存储方式存放在堆区,使用枚举类型存储图的形状的信息和利用结构体类型存储画板画图的相关的信息,枚举的分量包括直线、矩形、圆、曲线。
结构体包含的成员有图形类型、画笔的颜色、画笔的宽度、画刷颜色、原点坐标、终点坐标、布尔型的变量绘制端点和指向此结构的指针。
HotRegion是一个保存热点区域信息的结构体,它的分量有矩形热点区域的句柄、热点区域的起点和热点区域的终点。
tbButtons[]是工具栏的数据结构。
tagFILEHEADER是文件头的数据结构,它的分量有三个,分别是文件的类型、文件的大小和文件的后缀名它们都存储在栈区,栈区是执行到语句时开辟内存,语句块结束时销毁内存。
采用链表存储方式存放在堆区,用malloc()函数时开始分配内存,free()函数时销毁内存。
采用这种链式存储结构便于插入和删除,使用指针来修改指针指向,从而改变链表。
程序是由数据结构和算法组成的,数据结构对于程序的整体层次结构非常重要,数据结构的稳定性决定了程序的稳定性。
系统结构图
DIAGRAM8系统结构图
系统出错处理
1.内存分配出错
处理方案:
if(NULL==*aHead)
returnFALSE;
2.文件打开出错
if(fileHandle==INVALID_HANDLE_VALUE)
MessageBox(aHwnd,"
打开文件失败!
"
"
ERROR"
IDOK);
returnFALSE;
}
if(fileHeader.bfType!
=MAKEWORD('
D'
'
W'
))//文件类型是否合法
{MessageBox(aHwnd,"
无法打开的文件类型!
三、设计效果
四、总结
通过三周的实训,“通讯录”和“PaintBoard”系统项目的设计。
我们已经初步的了解项目的制作流程,“需求分析”“概要设计”及答辩“PPT”的制作格式、方法及相关内容的定义。
另外,在系统实现,代码编程,无论是在结构方面的设计思想还是在代码编写的规范方面,都有所提高。
更重要的是通过这三周,让我们对企业,有了初步的概念,并不像当初想的那么简单。
无论是企业的文化,还是其规章制度,都很重要性,另外也让我们深刻的体会到团队的重要,团队协作能力的重要性。
通过这三周的实训,让我们的思想观念有了很大的转变,看到了自己许多的不组,意识到了自身存在的很多问题。
发现问题,就要解决问题。
在接下来的学习生活中,为使自己能更好的融入这个社会中,我们就要想办法解决这些问题,不断成长。
五、心得体会
为期三周的实训结束了,虽然时间不长,但他足以改变一个人,改变一个人的思想。
记得刚来不久,和王老师聊天,王老师就提到了这个问题,说我们来到中兴实训,不要像在学校一样,什么都无所谓似的。
我们马上就要毕业了,要工作了,要为将来想想,如何安排接下来的人生,职业道路如何走。
这阶段很重要,在思想上一定要有个转变。
想想三周前,7月5日。
我们刚刚考完期末试,收拾好行囊,踏上中兴实训的校车。
还记得,当车开到中兴门口时,大家的欢呼声,我们就要踏进世界500强的企业了,心情有点小激动。
进入园区,首先为我们安排的就是食宿问题,对于这里的环境,我们还是很满意的,寝室有空调,不会让我们因为天气的原因,感到浮躁。
食堂虽然有点贵,但这也可以理解,毕竟这不是校园,是企业。
来到中兴,总的感觉,还不错。
休息了两天,接下来我们就正式进入实训阶段了,我选择的是C++方向的实训,之所以选择这个方向,其一是感觉学习C++找工作似乎相对于其他几个方向更容易一些。
另一方面也是自己对于编程有点兴趣,加上在选班时,郭老师向我们介绍此次C++实训的课程安排及授课方式吸引了我,所以,我选择了C++。
事实也证明,我没有选错。
在C++班,我们的班主任,周老师,他平易近人,经常和我们聊天,帮助我们解决实训期间所遇到问题,非常的热心负责。
另外为我们授课的是郭老师,他很风趣,也是我见过最有耐心的老师,他为我们讲课,一遍不懂,再来一遍,再不懂,他不会说我们,而是自己换一种更容易理解的方式讲解给我们听,直到我们每个人都能听懂为止,才进行下一环节。
还记得有次,我的一个代码程序编写出错了,调试检测都没问题,一运行程序就出错,郭老师在课上调试了好久也没找到,后来他中午没有去吃饭,而是留在教室里帮我解决这个问题,让我下午能继续进行下去。
正因为他的这种耐心,让我这个对于编程,对于C语言只能说“学过”的人,现在敢说“我入门”了。
在中兴,时刻强调着“团队精神”,实训开始不久,我们进行了分组,在安排的时候,王老师、周老师就对我们说,不要把认识的分到一组,让我们要去试着接触更多的人,锻炼我们的社交能力,团队合作能力,这些都是我们在将来的工作生活中所要遇到的,是不可或缺的。
另外还为我们安排了一些活动,如乒乓球比赛,素质拓展训练等等,这些都是为锻炼我们这种生活所必须的能力而安排的。
素质拓展训练,锻炼了我们团队合作的能力,乒乓球比赛,锻炼了我们的身体,但更重要的是我们那种集体的荣誉感,运动员在赛场拼搏,同学在赛场旁,加油!
呐喊,这让我们每个人都融合在一起,无论是赛场上的,还是赛场下的,大家都在为了同一个目标而努力着,奋斗着。
三周的实训生活,很快。
虽然在这里,每天安排的似乎都很紧密,有点累,但每天都很充实。
让我们在思想上有了新的认识,对于自己的将来有了新的思考,企业的规章制度有了初步的了解。
总之,在中兴的这三周里,受益匪浅。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 生产 实习 报告