C语言实训项目分析及源码
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
防灾科技学院
实习报告书
防灾科技学院灾害信息工程系
2015年制
项目一C语言实习
一、实习目的
本课程是网络工程专业的一门专业必修课程,是学生学习完C语言程序设计专业基础课程后,进一步学习其他专业课程前必须完成的一项实践教学环节。
本次实习通过1个综合性强、实用性强、趣味性强的应用实例,使学生进一步巩固C语言基本知识,掌握应用程序设计语言描述问题、分析问题和解决问题的方法和思想,为后继的面向对象程序设计、数据结构、Web应用技术、网络工程专业实习、网络工程生产实习、网络工程毕业实习课程等课程打下基础。
通过本课程的学习,使学生进一步明确学习目标、增强学习动力、培养学习兴趣。
二、实习任务概述
任务一:员工工资管理系统的设计与实现
本系统基于C语言,实现了一个小型的信息管理系统,主要包括以下功能:
1.信息的录入:
a)首次进入系统,可以添加职工的工号、姓名、基
本工资、津贴、员工奖金等数据录入操作。
b)系统再次登录,可以从文件导入信息,也可以对
文件内容进行修改,保存退出。
2.删除操作:对离职的员工信息要从系统里删除。
3.显示操作:将结构体中职工信息输出到屏幕上。
4.查询与修改操作:分别按职工工号和职工姓名查询,修改职工信息并保存。
5.统计与排序操作:分别统计所有员工的总工资,实现对总工资的排序。
三、实习所用软件简介
VC++6.0是Microsoft公司推出的一个基于Windows系统平台、可视化的集成开发环境,它的源程序按C++语言的要求编写,并加入了微软提供的功能强大的MFC(Microsoft Foundation Class)类库。
使用VC++提供的高度可视化的应用程序开发工具和MFC类库,可使应用程序开发变得简单。
使用VC++提供的高度可视化的应用程序开发工具和MFC类库,可使应用
程序开发变得简单。
Visual C++6.0以拥有“语法高亮”,自动编译功能以及高级除错功能而著称。
比如,它允许用户进行远程调试,单步执行等。
还有允许用户在调试期间重新编译被修改的代码,而不必重新启动正在调试的程序。
其编译及创建预编译头文件(stdafx.h)、最小重建功能及累加连结(link)著称。
这些特征明显缩短程序编辑、编译及连结的时间花费,在大型软件计划上尤其显著。
四、参考文献
[1] 韩莹.C语言实训教程[M].北京交通大学出版社,2013.
[2] 李新良.教学测评系统的应用与研究[J].湖南人文科技学院学报,2012(6):73-77.
[3] 张高煜.C语言程序设计实训.中国水利水电出版社,2011.8.
[4] 白帆.C语言开发实例详解.电子工业出版社,2012.5.
[5] 王为青.C语言实战105例.北京:人民邮电出版社,2011.
[6]明日科技编著.C语言项目案例分析.北京:清华大学出版社,2012.
五、实习日程安排
六、实习内容及步骤
任务1 员工工资管理系统(C语言模块)
1.1 系统开发思路(需求分析)
随着计算机技术的发展,企业管理越来越趋于自动化,而工资管理是企业管理的重要的组成部分,它与企业的财务管理、人才管理有着密切的联系。
由
于企业员工工资结构存在一定的规律性,工资放在时间上和操作上存在的一定的重复性,这使得企业事业单位工资管理计算机的实现成为了可能。
1.2 数据结构设计
struct Worker
{
char workernum[10];
char workername[20];
int basicwage;
int allowance;
int Bonus;
int totalwage;
}Worker_Infor[100];
1.3 系统设计与实现
1.3.1系统功能结构图及流程图
图1-1员工工资管理系统参考模块图.
1.3.2 主要函数设计
void Input_Infor() 函数功能:员工信息的录入
void Print_Worker(int i)函数功能:员工工资的显示
void delet_worker() 函数功能:删除员工信息
int Search_Name() 函数功能:姓名查询
int Search_Num() 函数功能:工号查询
int Search_Worker() 函数功能:查询主函数,调用姓名/工号查询
void Modify_Worker() 函数功能:修改员工信息
void Cal_Wages() 函数功能:计算总工资
void Sort_Wage() 函数功能:对员工工资排序
int Save_Infor() 函数功能:文件写操作
void Up_Infor() 函数功能:读文件
void Input_worker(int i) 函数功能:添加新的员工信息
void main() 函数功能:主函数选择进入界面
1.3.3 系统功能设计与实现
下面分别对该模块中的具体功能进行详细描述,主要功能实现的代码相应功能实现的界面截图。
1.---------------------------------------//主函数
void main()
{
int c,t=1,i;
Up_Infor();
printf("输入员工数量:");
scanf("%d",&n);
while(t)
{
printf
("#######################################################\n"); printf ("## 欢迎进入职工工资管理系统: ##\n");printf ("## 1.录入员工信息 ##\n"); printf ("## 2.职工总工资进行排序 ##\n"); printf ("## 3.文件保存到硬盘上 ##\n"); printf ("## 4.查询员工信息 ##\n"); printf ("## 5.修改员工信息 ##\n"); printf ("## 6.查看所有员工信息 ##\n"); printf ("## 7.添加员工信息 ##\n"); printf ("## 8.删除员工信息 ##\n"); printf ("## 9.退出程序 ##\n"); printf("## ##\n"); printf ("## 请选择对应的编号(1—7) ##\n"); printf ("#######################################################\n");
scanf("%d",&c);
getchar();
if (c<1||10<c){printf ("\t输入错误,请重新输入:\n");continue ;} switch(c)
{
case 1:Input_Infor();Cal_Wages();break;
case 2:Sort_Wage();break;
case 3:Save_Infor();printf ("\t按任意键继续!\n");getchar();break;
case 4:Search_Worker();break;
case 5:Modify_Worker();break;
case 6:for (i=0;i<n;i++)Print_Worker(i);break;
case 7:Input_worker(i);break;
case 8:delet_worker();break;
case 9:t=0;printf ("\t谢谢使用!\n");printf ("\t按任意键返回!");break;
}
}
}
图1-3
2.----------------------------------------//读文件
void Up_Infor()
{
int i;
FILE *pk;
pk=fopen("D:\\worker.txt","at+");
for (i=0;i<100;i++)
{
fscanf(pk,"%-10s%-8s\t%-10d%-10d%-10d%-10d\t\n",Worker_Infor[i ].workernum,Worker_Infor[i].workername,Worker_Infor[i].basicwage, Worker_Infor[i].allowance,Worker_Infor[i].Bonus,Worker_Infor[i].t otalwage);
if (strcmp(Worker_Infor[i].workernum,"stop")==0)break;
}
fclose(pk);
}
3.------------------------------//员工信息的录入
void Input_Infor()
{
char c;
int i;
if (n==0)i=0;
else i=n-1;
printf ("\t请输入职工工资信息!\n");
while (1)
{
printf ("\t请输入第%d位职工编号:",i+1);
//gets(Worker_Infor[i].workernum);
scanf("%s",Worker_Infor[i].workernum);
getchar();
printf ("\t工号为%s职工的姓名:",Worker_Infor[i].workernum);
gets(Worker_Infor[i].workername);
printf ("\t%s职工基本工资:",Worker_Infor[i].workername);
while(1)
{
scanf("%d",&Worker_Infor[i].basicwage);
if (Worker_Infor[i].basicwage>=0)
break;
else printf ("\t输入错误,请重试!");
}
printf ("\t%s职工的津贴:",Worker_Infor[i].workername);
while(1)
{
scanf("%d",&Worker_Infor[i].allowance);
if (Worker_Infor[i].allowance>=0)
break;
else printf ("\t输入错误,重新输入:");
}
printf ("\t%s职工的奖金:",Worker_Infor[i].workername);
while(1)
{
scanf("%d",&Worker_Infor[i].Bonus);
if (Worker_Infor[i].Bonus>=0)
break;
else printf ("\t输入错误,重新输入:");
}
i++;
n=i;
getchar();
printf ("\n是否继续输入:(Y/N )或者 (y/n):");
scanf ("%c",&c);
if (c=='n'||c=='N')break;
}
}
图1-4
4.-----------------------------------//对员工工资排序
void Sort_Wage()
{
int i,j;
int Worker_temp;
Cal_Wages();
for (i=0;i<n;i++)
{
for (j=i+1;j<n;j++)
if (Worker_Infor[j].totalwage<= Worker_Infor[i].totalwage)
{
Worker_temp=Worker_Infor[i].totalwage;
Worker_Infor[i].totalwage=Worker_Infor[j].totalwage;
Worker_Infor[j].totalwage=Worker_temp;
}
}
for (i=0;i<n;i++)
printf
("%-10s%-8s\t%-10d%-10d%-10d%-10d\t\n",Worker_Infor[i].workernum, Worker_Infor[i].workername,Worker_Infor[i].basicwage,Worker_Infor [i].allowance,Worker_Infor[i].Bonus,Worker_Infor[i].totalwage);
}
图1-5
5.---------------//文件写操作,文件保存到硬盘上
int Save_Infor()
{
int i;
FILE *pk;
Cal_Wages();
if ((pk=fopen("D:\\worker.txt","wr+"))==NULL)
{
printf ("文件打开失败!");
return 0;
}
for (i=0;i<n;i++)
{
fprintf(pk,"%-10s%-8s\t%-10d%-10d%-10d%-10d\t\n",Worker_Infor[ i].workernum,Worker_Infor[i].workername,Worker_Infor[i].basicwage ,Worker_Infor[i].allowance,Worker_Infor[i].Bonus,Worker_Infor[i]. totalwage);
}
fclose(pk);
printf ("文件保存成功!");
return 1;
}
图1-6
6.-----------------//查询员工信息
int Search_Worker()
{
int i,m;
printf ("请选择查询方式:\n1.按姓名查找\n2.按员工工号查找\n3.退出\n");
scanf ("%d",&m);
switch(m)
{
case 1:i=Search_Name();return i ;break;
case 2:i=Search_Num();return i ;break;
case 3:return -1;
}
}
6.1--------------------------------//姓名查询
int Search_Name()
{
int i;
char name[20];
printf ("请输入要查询的姓名:");
scanf ("%s",name);
for (i=0;i<n;i++)
{
if (strcmp(name,Worker_Infor[i].workername)==0)
{printf
("%-10s%-8s\t%-10d%-10d%-10d%-10d\t\n",Worker_Infor[i].workernum, Worker_Infor[i].workername,Worker_Infor[i].basicwage,Worker_Infor [i].allowance,Worker_Infor[i].Bonus,Worker_Infor[i].totalwage);
return i;break;}
}
if (i==n)
{
printf ("没有找到该员工!\n");return -1;
}
//else return i;
}
图1-7
6.2---------------------------//按工号查询
int Search_Num()
{
int i;
char num[20];
printf ("请输入要查询的工号:");
scanf ("%s",num);
for (i=0;i<n;i++)
{
if (strcmp(num,Worker_Infor[i].workernum)==0)
{printf
("%-10s%-8s\t%-10d%-10d%-10d%-10d\t\n",Worker_Infor[i].workernum, Worker_Infor[i].workername,Worker_Infor[i].basicwage,Worker_Infor [i].allowance,Worker_Infor[i].Bonus,Worker_Infor[i].totalwage);
return i;break;}
}
if (i==n)
{
printf ("没有找到该员工!\n");return -1;
}
//else return i;
}
图1-8
7.--------------------------//修改员工信息
void Modify_Worker()
{
int i,m;
printf ("请查询您要修改的员工:\n");
i=Search_Worker();
getchar();
printf
("#######################################################\n");
printf ("## 请选择您要修改的内容: ##\n");
printf ("## 1.员工号 ##\n");
printf("## 2.员工姓名 ##\n");
printf ("## 3.员工的基本工资 ##\n");
printf ("## 4.员工的津贴 ##\n");
printf("## 5.员工的奖金 ##\n");
printf("## 6.退出 ##\n");
printf
("#######################################################\n");
scanf ("%d",&m);
switch(m)
{
case 1:printf ("请输入新的员工号:");scanf ("%s",&Worker_Infor[i].workernum);break;
case 2:printf ("请输入新的员工名:");scanf ("%s",&Worker_Infor[i].workername);break;
case 3:printf ("请输入新的员工基本工资:");scanf ("%d",&Worker_Infor[i].basicwage);break;
case 4:printf ("请输入新的员工津贴:");scanf("%d",&Worker_Infor[i].allowance);break;
case 5:printf ("请输入新的员工奖金:");scanf ("%d",&Worker_Infor[i].Bonus);break;
case 6:return;
}
printf ("修改后的员工的基本信息为:\n");
Print_Worker(i);
}
图1-9
8.---------------//查看所有员工信息void Print_Worker(int i)
{
printf
("%-10s%-8s\t%-10d%-10d%-10d%-10d\t\n",Worker_Infor[i].workernum, Worker_Infor[i].workername,Worker_Infor[i].basicwage,Worker_Infor [i].allowance,Worker_Infor[i].Bonus,Worker_Infor[i].totalwage);
}
图1-10
9.-------------------//添加新的员工信息
void Input_worker(int i){
char c;
printf("\t请输入职工工资信息:\n");
while(1){
printf("\t第%d位职工的编号:",n+1);
gets(Worker_Infor[i].workernum);
printf("\t工号为%s职工的姓名:",Worker_Infor[n].workernum);
gets(Worker_Infor[n].workername);
printf("\t%s职工的基本工资:",Worker_Infor[n].workername);
while(1){
scanf("%d",&Worker_Infor[n].basicwage);
if(Worker_Infor[n].basicwage>=0)break;
else printf("\t输入错误请重试:");
}
printf("\t%s职工的津贴:",Worker_Infor[n].workername);
while(1){
scanf("%d",&Worker_Infor[n].allowance);
if(Worker_Infor[n].allowance>=0)break;
else printf("\t输入错误请重试:");
}
printf("\t%s职工的奖金:",Worker_Infor[n].workername);
while(1){
scanf("%d",&Worker_Infor[n].Bonus);
if(Worker_Infor[n].Bonus>=0)break;
else printf("\t输入错误请重试:");
}
i++;
n++;
getchar();
printf("是否想要输入下一个员工信息(Y/N):");
scanf("%c",&c);
if(c=='N'||c=='n')break;
getchar();
}
}
图1-11
图1-12
10.----------------//删除员工信息void delet_worker()
{
int i,k=0;
char name[20];
printf("输入需要删除的员工姓名:");
scanf("%s",name);
for(i=0;i<n-1;i++)
{
if(strcmp(name,Worker_Infor[i].workername)==0);break;} while(1){
strcpy(Worker_Infor[i].workername,Worker_Infor[i+1].workername );
strcpy(Worker_Infor[i].workernum,Worker_Infor[i].workernum);
Worker_Infor[i].allowance=Worker_Infor[i].allowance;
Worker_Infor[i].basicwage=Worker_Infor[i+1].basicwage;
Worker_Infor[i].Bonus=Worker_Infor[i+1].Bonus;
Worker_Infor[i].totalwage=Worker_Infor[i+1].totalwage;
Print_Worker(i);
i++;
if(i==n-1)break;
}
}
图1-13
图1-14
1.4 结论
1.4.1 本次实习取得的成绩
第一次接触到这样多的代码的书写,不仅锻炼了自己的编程能力,而且学会了坚持的精神。
通过这次的实训,我了解到了代码所具有的强大的功能;
熟悉了结构体的使用,对于函数的调用也有了一个比较深刻的认识,我觉得这将更有力于我将来的c语言的学习。
1.4.2系统存在的问题
本次实训我所写的员工工资管理系统大致上还是令人满意的。
1.4.3 总结
这次的c语言实训说真的令人印象深刻,我在刚开始的时候,由于以前都没有写过这么久的代码,心里难免会有一种烦躁感。
但是,随着管理系统的一点点成型,我的心里又不那么浮躁了,看着自己的付出有了回报,心里真的很开心。
通过这段时间的学习,我发现以前的自己不那么注重手动上机练习,存在很大的学习漏洞。
以前总觉得c语言不那么难,但是当发现自己不能将一个个的功能实现的时候,就觉得自己开始后悔没有好好掌握程序流程的学习。
后来的日子,我慢慢赶了上来。
虽然在实训的过程中不是那么一帆风顺,但是自己觉得真的学到了很多的东西,在发现问题、调试后来解决问题的过程中使我更加了解了c 语言,也增加了我对c语言学习的信心。
项目二综合布线
一、实习目的
通过实习使学生了解综合布线在生产实践和科学研究中的应用情况,使学生对生产过程中的网络和服务器等有初步的了解和认识,同时培育学生的现场安全生产意识及组织纪律观念。
二、实习要求
掌握综合布线的七个子系统的关系和区别。
对七个子系统的实现进行整体连续操作。
完成建筑物综合布线系统从设计、安装、检测到验收的过程。
三、实习内容及步骤
实验一、制作直通线、交叉线
直通线:又叫正线或标准线,两端采用568B做线标准,注意两端都是同样的线序且一一对应。
直通线应用最广泛,不同设备之间,比如路由器和交换机、PC和交换机等。
交叉线:又叫反线,线序按照一端568A,一端568B的标准排列好线序,并用RJ45水晶头压好。
交叉线一般用于相同设备的连接,比如交换机和交换机、电脑和电脑之间。
百兆双绞线只用8根双绞线的其中4跟,橙百线、橙线、绿白线、绿线。
而千兆双绞线需要用到全部8根。
图2-1 电缆线序
实验步骤:
1、使用网线钳中间的圆形剥线缺口,剥除双绞线外层绝缘外皮,把里
面的4对双绞线一一拆开,排序。
1)用剥线器延双绞线头部30mm左右,旋转1圈剥除外皮,注意不要损伤里面的8根线芯的绝缘层。
图2-2
2)捋直弯曲的双绞线,排好线序把参差不齐的线头用网线钳的刀片剪
齐,让它长度一致为14mm。
如图
图2-3
2、插入RJ45水晶头开始压接。
1)水晶头有卡子的一头向下,按线序1-8从左至右的顺序把双绞线插入水晶头的最顶部,8根双绞线一定要到达水晶头的8个金属刀片的上方,没有接触到刀片的话就无法导电通信。
图2-4
2)把连上水晶头的双绞线,插入到网线钳的8p压口中去。
注意钳子的
压口的方向,8个金属刀片的压口在外侧,水晶头压口在自己内侧,不
要放反了。
用力压紧。
图2-5
3)压接完毕的水晶头检查下是否合格。
做好双绞线两头后,将两头分别插入测线器的RJ45接口。
检测是否连通
图2-6
3、检测方法
直通线测试,测线器的子母端的指示灯按照1-1,2-2,3-3,4-4,5-5,6-6,7-7,8-8的顺序轮流同时闪烁,表明8根线全部正常。
直通线可以使用。
如有不亮或者亮度很暗的,表明指示灯对应的双绞线连通不正常。
百兆交叉线测试,测线器的子母端的指示灯按照
1-3,2-6,3-1,4-4,5-5,6-2,7-7,8-8的顺序轮流同时闪烁,表明正常。
千兆交叉线测试,测线器的子母端的指示灯按照1-3,2-6,3-1,4-7,5-8,6-2,7-4,8-5的顺序轮流同时闪烁,表明正常。
图2-7
实验二、配线架端接实验
实验步骤:
1、RJ45配线架端接:
(1)取一段3米长的网线,用剥线器延双绞线头部40mm左右,旋转1圈剥除皮注意不要损伤里面的8根线芯的绝缘层。
(2)剥去外皮后露出里面的4对双绞线。
(3)按照配线架上的线序标记,把对应颜色的双绞线分别打入配线架的模块中去。
打线过程中打线钳要保持水平,用力一次把线打入。
把网线的两头分别打入两个配线架的相对应的接口中去。
注意不要把打线钳拿反,刀口上的剪子是减掉多余的线头用的。
(4)一端打完后的样子。
两端都打完后在配线架的对应接口中插入直通跳线,一头连接测线器,测试端接后两个配线架是否能够通信。
2、110配线架端接:
(1)取2根3米长的网线,4根1米长的网线,剥开网线,露出4对双绞线。
(2)按照蓝橙绿棕的线序,蓝白、蓝、橙白、橙、绿白、绿、棕白、棕,把两根3米的网线,在110跳线架最左侧模块接口开始处分别把16根双绞线线芯放入对应的模块里。
(3)使用橡胶锤把110跳线架的模块砸入110配线架,用老虎钳或其他平面大又结实的工具垫一下,增大受力面积,防止损坏110跳线架。
把两个模块都安装到110跳线架上。
(注意110跳线架模块的正反,有颜色标记的一面面向自己,蓝色标记在左边第一个)
(4)把两根3米的网线的另外一端。
用同样的方法打入另一个110跳线架。
(5)取2根1米长的网线,在110跳线架的模块上按顺序用打线钳打入,网线的另一头按568B标准制作水晶头。
另一个110跳线架使用剩下的两条1米长的双绞线制作方法相同。
(6)用测线器测试4个相对应的RJ45接口,观察是否连通。
3、检测方法
测线器的子母端的指示灯按照1-1,2-2,3-3,4-4,5-5,6-6,7-7,8-8的顺序轮流同时闪烁,表明8根线全部正常。
如有不亮或者亮度很暗的,表明指示灯对应的双绞线连通不正常。
实验三、光纤熔接实验
实验步骤:
(1)室外光缆中有两条钢筋加固,在剥去外层绝缘表皮前需要用老虎钳拉出其中的一条钢筋70cm,并剪断。
(2)用开缆刀在光缆7-10cm处,环切一圈,调整刀口深度继续环切,直到能看见里面白色的保护套管,注意不要切的太深,伤害里面的光芯。
(3)切断外层保护套以后,把外层保护套小心的取下,注意不要把里面的光纤弄断,在向下切7-10cm,直到把70cm的外层保护套全部取下。
把剩余的一根钢筋切断,留7cm的长度,留着把光缆放进光纤配线架的时候做固定用。
(4)用剥皮钳1.0缺口,剪断光缆的白色保护套管。
也是一段一段的剪,一次5-7cm。
直到剪够70cm。
(5)白色保护套管被切除后,光缆里边的玻璃光芯。
上面的颜色是树脂,它有很多种颜色,和保护套管一样对光芯有一定的保护作用与标记作用。
(6)用光纤剥线钳,把上面的树脂剥掉。
剥出5cm左右的玻璃芯。
(7)用棉球占少许酒精擦拭下,接下来就可以为熔接做准备了,再剥一根光缆准备做两根光缆的熔接实验。
(8)首先把光纤切割刀的刀片归位,拨到靠近自己的位置,上图没有归位。
把剥好的光纤放到光纤切割刀上面去,上面是放单模光纤的,下面较粗的是放多模光纤的,有树脂的地方放在图片上红线的位置,最远不要超过中间的刻度,光纤的头部搭在靠近刀片的那一侧固定平台上。
(9)关好固定的盖子,用大拇指向前方快速拨动刀片,切断光芯,使光芯截面平整并有一个可以熔接的合适长度
(10)将切好的两根光芯分别放入光纤熔接机的两个固定装置里,光芯头部不要超过熔接机中间的两根针指向的位置(红圈所示)。
(11)盖上熔接机的两个固定装置,最后盖上盖子
(12)盖上盖子后会自动调整光芯的位置,可以通过显示器看到放大了的光芯的状态。
如果位置安放不正确,切口不平,会再次提示请放入光纤,此时需要
从新剥树脂,从新切口,再次放入光纤。
没有问题,按run键开始熔接。
如果熔接成功会显示光纤的损耗值,小于0.05算成功。
四、综合布线工程设计作业
点数统计表的编制
图2-8
2.综合布线系统图的设计
点数统计表非常全面地反映了该项目的信息点数量和位置,但不能反映信息点的连接关系。
而系统图直接决定网络应用的拓扑图。
综合布线系统图一般在电气施工图册的弱电图纸部分的首页。
要求:
1.|X|: 代表网络设备和配线设备,口: 代表网络插座。
---:代表缆线。
缆线型号标记正确。
特别要标明是光缆还是电缆。
光缆还要标明是室外光缆,还是室内光缆,再详细时还要标明是单模光缆还是多模光缆。
2.说明完整,系统图设计完成后,必须在图纸的空白位置增加设计说明。
例如
增加图形符号说明,对信息点总数和个别特殊需求给与说明等。
3.标题栏完整一般在图纸右下角,标题栏至少要包括:建筑工程名称,项目
名称,工种,图纸编号,设计人签字,审核人签字,审定人签字。
一般使用AutoCAD来制作
配线设备图形如下:
图2-9 3.信息点端口对应表的设计
图2-10
4.编制材料表
五、实习体会
两天的综合布线下来,让我对网络工程有了更清楚的认识,动手能力有了进一步的提升。
不是仅仅作用于书本上的知识,让其变得非常有趣。
刚开始,自己还在为不能适应这种环境而担心,但后来在同学们的帮助下,自己慢慢的了解了综合布线,接着自己从中看到了很多的收获。
在这里我能学习,又能找到快乐。
充满了各种乐趣。
这次的综合布线说真的令人印象深刻,由于以前都没有做过这样的事,心里难免会有一种紧张感。
但是,随着实验的深入,我的心里又不那么紧张了。
通过这段时间的学习,我发现以前的自己不那么注重动手能力,存在很大的学习漏洞。
就觉得自己开始后悔没有经常动手。
虽然在布线的过程中不是那么一帆风顺,但是自己觉得真的学到了很多的东西,在发现问题、解决问题的过程中使我更加了解了综合布线。
我相信综合布线对我们以后的实际生活也会有很大的帮助。