计算机网络编程实习1_第1页
计算机网络编程实习1_第2页
计算机网络编程实习1_第3页
计算机网络编程实习1_第4页
计算机网络编程实习1_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEPAGE1计算机网络编程实习1第一篇:计算机网络编程实习1实验1——JAVASocket编程处理初步实验目的:熟悉JAVASocket编程基础知识实验内容:掌握JAVA网络编程的Socket地址类和Socket类的使用,了解JAVA输入输出流的使用。编写一对客户端-服务器通信程序。实验要求:1、了解JAVA中地址表示的几种方法,掌握Socket编程中地址相关的类(InetAddress和NetworkInterface)的使用方法:编写程序完成下述功能:1.在标准输出罗列本机所有网络接口2.在标准输出给出“本地回环地址”的网络接口的名称3.判断本机所有网络接口中哪些可以到达2、在本机创建一个临时目录,并在其中创建2-3个文本文件(文件名任意填写)。编写客户端服务器程序。完成以下功能:编写一个TCP服务端程序,实现下述功能:1.侦听20XX端口,等待客户端连接;2.当客户端连接创建之后,读取客户端消息,按照以下规则分别执行相应操作:消息==list,则将刚创建的临时目录中的文件名以换行字符(n)分隔,传输给客户端;消息以echo为前缀,则将echo后的字符作为内容传输给客户端;消息==close,则关闭与客户端的连接;其他情况,传输UNKNOWNCommands给客户端;3.处理完客户端消息,并且客户端连接尚未关闭,则继续等待客户端输入,回到上述第二步;编写一个TCP客户端程序,实现下述功能:1.连接服务端程序(20XX端口)2.如果连接建立成功,转第4步3.如果连接失败,在标准输出打印“ConnectionFailed.”,并退出程序;4.从标准输入读取用户输入,将用户输入传输给服务端5.如果用户输入是close,是则关闭与服务端连接,并在标准输出打印“ConnectionClosed”,退出程序;否则,转下一步6.读取服务端消息,将消息打印至标准输出;转4步。3、撰写实验报告并附上所用程序和结果。20XX-5-3第二篇:计算机网络实验报告(路由算法、Socket编程)计算机网络实验报告班级:姓名:学号:实验一一.实验目的及要求编写程序,模拟距离矢量路由算法的路由表交换过程,演示交换后的路由表的变化。二.实验原理距离矢量路由算法是这样工作的:每个路由器维护一张路由表(即一个矢量),它以网络中的每个路由器为索引,表中列出了当前已知的路由器到每个目标路由器的最佳距离,以及所使用的线路。通过在邻居之间相互交换信息,路由器不断地更新他们的内部路由表。举例来说,假定使用延迟作为“距离”的度量标准,并且该路由器发送一个列表,其中包含了他到每一个目标路由器的延时估计值;同时,他也从每个邻居路由器接收到一个类似的列表。假设一个路由器接收到来自邻居x的一个列表,其中x(i)表示x估计的到达路由器i所需要的时间。如果该路由器知道他到x的延时为m毫秒,那么他也知道在x(i)+m毫秒之间内经过x可以到达路由器i。一个路由器针对每个邻居都执行这样的计算,就可以发现最佳的估计值,然后在新的路由器表中使用这个最佳的估计值以及对应的输出路线。三.源程序:#include“stdio.h”#include“stdlib.h”#include“malloc.h”#include“graphics.h”#include“dos.h”#defineVERNUM7typedefstruct{intdis;intflag;intflag2;}RoutNode;chartmp[10];RoutNodedata[VERNUM][VERNUM];voidwelcome();voidInitRoutData(FILE*pfile);voidPrintRoutData();voidSendInf(intrecv,intsend);voidExchange();intmain(){intstart,end,i,j,m,n;FILE*pfile;welcome();pfile=fopen(“1.txt”,“r”);if(pfile==NULL){printf(“thefilewrong,pressanykeytocomeback.n”);getch();return;}elseInitRoutData(pfile);fclose(pfile);printf(“ntheoriginalroutetable:n”);for(i=0;i{printf(“%c||”,i+65);for(j=0;j<VERNUM;j++)if(data[i][j].dis>0)printf(“<%c%d>”,j+65,data[i][j].dis);printf(“n”);}PrintRoutData();getch();for(i=0;i<VERNUM;i++){for(m=0;m<VERNUM;m++)for(n=0;n<VERNUM;n++)data[m][n].flag=0;Exchange();PrintRoutData();getch();}printf(“nexchangetheroutetable:n”);return0;}voidwelcome(){intgdriver=DETECT,gmode;registerbgidriver(EGAVGA_driver);initgraph(&gdriver,&gmode,“C:Win-TC”);cleardevice();setbkcolor(CYAN);setviewport(0,0,639,479,1);clearviewport();setbkcolor(BLUE);setcolor(14);rectangle(20XX20XX440,280);setfillstyle(1,5);floodfill(300,240,14);settextstyle(0,0,2);outtextxy(50,30,“DistanceVectorRoutingAlgorithm”);setcolor(15);settextstyle(1,0,4);outtextxy(260,214,“Welcometouse!”);line(0,80,640,80);getch();delay(300);cleardevice();}voidInitRoutData(FILE*pfile){charnum[10];inti=0;charc;intm,n;fseek(pfile,0,0);for(m=0;!feof(pfile)&&m<7;m++){for(n=0;!feof(pfile)&&n<7;n++){while(!feof(pfile)){c=fgetc(pfile);if(c==','){num[i]='';data[m][n].dis=atoi(num);data[m][n].flag=0;data[m][n].flag=0;i=0;break;}/*endofif*/elseif((c>='0'&&c<='9')||c=='-'){num[i++]=c;}/*endofelseif*/}/*endofwhile*/}/*endoffor(n=0*/}/*endoffor(m=0*/}voidPrintRoutData(){inti,j;for(i=0;i<VERNUM;i++){settextstyle(1,0,3);sprintf(tmp,“%c”,i+65);outtextxy(i*80+50,130,tmp);outtextxy(10,160+i*40,tmp);}for(j=0;j<VERNUM;j++){for(i=0;i<VERNUM;i++){if(data[i][j].dis<=0&&i!=j){if(data[i][j].flag2==1){setfillstyle(SOLID_FILL,5);bar(80*i+50,40*j+155,80*i+120XX0*j+185);delay(50000);data[i][j].flag2=0;}setfillstyle(SOLID_FILL,3);bar(80*i+50,40*j+155,80*i+120XX0*j+185);settextstyle(1,0,2);sprintf(tmp,“-”);outtextxy(80*i+65,40*j+165,tmp);}elseif(data[i][j].dis>=0){if(data[i][j].flag2==1){setfillstyle(SOLID_FILL,5);bar(80*i+50,40*j+155,80*i+120XX0*j+185);delay(50000);data[i][j].flag2=0;}setfillstyle(SOLID_FILL,3);bar(80*i+50,40*j+155,80*i+120XX0*j+185);settextstyle(1,0,2);sprintf(tmp,“%d”,data[i][j].dis);outtextxy(80*i+65,40*j+165,tmp);}}/*endoffor(j=0*/}/*endoffor(i=0*/}voidSendInf(intrecv,intsend){inti;for(i=0;i<VERNUM;i++){if(data[send][i].dis>0&&data[send][i].flag!=1){if(data[recv][i].dis<=0&&recv!=i){data[recv][i].dis=data[send][i].dis+data[recv][send].dis;data[recv][i].flag=1;data[recv][i].flag2=1;}elseif(data[recv][i].dis>data[send][i].dis+data[recv][send].dis){data[recv][i].dis=data[send][i].dis+data[recv][send].dis;data[recv][i].flag=1;data[recv][i].flag2=1;}}/*endofif*/}/*endoffor*/}voidExchange(){inti,j;for(i=0;i<VERNUM;i++){for(j=0;j<VERNUM;j++){if(data[i][j].dis>0&&data[i][j].flag!=1){SendInf(i,j);}/*endofif*/}/*endoffor(j=0*/}/*endoffor(i=0*/}四、实验心得体会通过本次实验训练,我了解了距离矢量路由算法的基本原理,复习了C语言编程的内容,通过对路由算法的实现,加深了对路由表交换的理解。实验二一、实验目的及要求编写程序,联系Socket编程和TCP/IP协议的应用,要求实现Server端和Client端的信息通信。二、实验原理在TCP/IP编程中,为客户端和服务器端提供相同的端口号和IP地址号,实现Server端和Client端互联,运用Java文件流的知识,实现两端的信息传递。三、源程序/********************ChatClient*********************/importjava.awt.*;importjava.awt.event.*;importjava.io.*;importjava.io.IOException;.*;publicclassChatClientextendsFrame{Sockets=null;DataOutputStreamdos=null;TextFieldtf=newTextField();TextAreata=newTextArea();publicstaticvoidmain(String[]args){newChatClient().launchFrame();}publicvoidlaunchFrame(){setLocation(400,300);this.setSize(300,300);add(tf,BorderLayout.SOUTH);add(ta,BorderLayout.NORTH);pack();tf.addActionListener(newtfListener());this.addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEvente){disconn();System.exit(0);}});setVisible(true);conn();}publicvoidconn(){try{s=newSocket(“”,5555);dos=newDataOutputStream(s.getOutputStream());System.out.println(“客户端连接成功!”);}catch(UnknownHostExceptione){e.printStackTrace();}catch(IOExceptione){e.printStackTrace();}}publicvoiddisconn(){try{dos.close();s.close();}catch(IOExceptione){e.printStackTrace();}}privateclasstfListenerimplementsActionListener{publicvoidactionPerformed(ActionEvente){Stringstr=tf.getText().trim();ta.setText(str);tf.setText(“");try{dos.writeUTF(str);dos.flush();}catch(IOExceptione1){e1.printStackTrace();}}}}/********************ChatServer******************/importjava.io.IOException;.*;importjava.io.*;publicclassChatServer{publicstaticvoidmain(String[]args){booleanstarted=false;try{ServerSocketss=newServerSocket(5555);started=true;while(started){booleanbConn=false;Sockets=ss.accept();bConn=true;System.out.println(”一个客户端已连接");DataInputStreamdis=newDataInputStream(s.getInputStream());while(bConn){Stringstr=dis.readUTF();System.out.println(str);}}}dis.close();}}catch(IOExceptione){e.printStackTrace();}四、实验心得体会通过本次实验的练习,熟悉了TCP/IP协议,对套接字等概念有了深入的了解,对用Java语言实现Socket编程并实现客户端和服务器端的信息交互有了一定的了解。第三篇:编程实习心得计算机辅助制造实训报告专业数控技术班级数控1002学号09姓名___耿策指导教师路大勇起止日期20XX.12.10—12.14目录计算机辅助制造实训任务书………………1实训任务一…………………实训任务二…………………实训任务三…………………实训任务四(配合件凸件)………………实训任务五(配合件凹件)………………心得体会……………………367101316mastercam实训任务书一、目的与要求mastercam实训为该课程学习的重要组成部分。用于巩固所学知识,强化二维和三维造型技能,熟练进行二维加工和三维曲面粗、精加工刀具路径的生成、检验、后处理等的操作。实训时间为一周,要求完成规定的造型与编程任务(电子稿)和《实训报告》。二、任务说明1.完成图1的二维造型,不标注尺寸。完成外形铣削及挖槽铣削加工程序的编制(零件厚度10),书写相应的文字说明。编程原点位于底边中点,材料为45钢,刀具及切削参数自定。实训任务一实训任务二2.采用实体建模方法,完成图2形体的三维造型。3.综合运用所学造型及编程技能,完成下列零件的工艺设计、程序编制及加工校验,书写相应的文字说明。刀具及切削参数自定。实训任务三实训任务四实训任务五实训任务一:实训任务一1图样分析:通过看图纸,了解工件的外形。由图可知,该工件是一个二维造型。2.工艺路线分析:根据图纸可知,该工件在加工过程中,首先选用φ20XX刀铣出外形轮廓,接着选用φ12立铣刀用外形铣削的方式分三层铣出内槽轮廓。3刀具的选择:φ12立铣刀、φ20XX刀表1工件1工艺过程卡篇二:计算机编程实习报告土木工程20XX级计算机实习任务书指导教师班级土木(xx)班姓名mr.su学号西南交通大学土木工程学院20XX年11月(一)实习时间:20XX年11月30日—12月14日(二)实习地点:x7103(三)实习目的:计算机实习是本科计算机基础教学的一个重要环节。它对于巩固学生的计算机基础知识,增强学生的计算机应用水平,改善学生的知识结构,具有重要意义。本课程的教学目的是:通过系统的上机实习,使学生的计算机基础知识与基本操作技能得到进一步的巩固,提高学生的编程能力和用机水平,培养学生用计算机分析与解决问题的意识,为后续课程打下基础。(四)实习内容:本实习要求完成如下三项任务:1.巩固所学的计算机基本知识和基本操作技能,包括:(1)熟练掌握正确的键盘指法和英文盲打技术;(2)能熟练使用windows操作系统;(3)熟练掌握word、excel、powerpoint等办公自动化软件;(4)能使用网络获取、发送信息;(5)用powerpoint制作一组幻灯片(幻灯片所表述的主题自定),或用excel绘制出图1所示的sin(x)、cos(x)函数曲线。2.计算机语言及编程用本学期已学过的vc++语言编程。编程题目及要求由指导教师指定(可参考附录中提供的题目)。3.提交一份实习报告(要求打印)实习报告不得少于1000字:主要总结实习心得和实习成果(全部程序及计算(五)实习成果:【1】程序1:按以下形式打印出杨辉三角形中的各值111121133114641···············***691算法原理:数据结构:用一个二维数组存放杨辉三角形的数据。分析杨辉三角形的数据特点,该三角形每一行的行初和行末的数据都是1,从第三行起,每行数据的第2—i-2列数据都满足以下关系:a[i][j]=a[i-1][j-i]+a[i-1][j];根据上述关系得出杨辉三角的每个数据存放在已定义的二维数组中,然后按照图形格式输出已经存放的数据,得出杨辉三角。程序流程图:数组a[i][j],i表示行,j表示每一行的第几个数。使用方法:输入程序,直接显示。源程序:#include#includeusingnamespacestd;voidmain(){inti,j;inta[11][22];for(i=0;i<11;i++)for(j=0;j<22;j++)a[i][j]=0;cout<【2】程序2:从键盘输入一些字符,逐个把它们送到磁盘上去,直到输入一个#为止。算法原理:没有具体详细的数学算法原理。变量说明:p表示的是要输入的字符,charp[100]表示的是一个字符型一维数组,t表示的是输出文件的名称,doc表示的是文件的输出格式,i表示的是循环变量。使用方法:输入需要的字符,用#键结束,#键之后的不能输出。第四篇:数控编程实习一.实习目的随着我国机械加工行业的发展数控设备的广泛应用,不少职校都开设数控技术应用专业,培养应用型人才.通过实习是为了更好的将理论知识运用到实践中去,了解现代机械制造工业的工艺过程,和数控加工方法及其所用主要设备的工作原理,以生产实践获的感性知识.二.实习内容1;安全生产操作规程:听老师讲解有关工业安全方面的知识.遵守操作规程才是安全的保障.a,进入工作场地须戴好劳动防护用品,女生须戴好工作帽.b,上班前须先对机床和润滑系统注油.检查机床分机构的完好性.手柄位置的正确性;启动后应使主轴低速空转1-2分钟,等机床正常后才能工作.c,工作中需要变速的必须先停车.变换走刀箱,手柄位置要低速时进行.使用电器开的机床不准用正,反车作紧急停车,以免打坏齿轮.d,不允许在卡盘上及床身导轨上敲击校直工作,床面上不准放置工具或工作.e,更换卡盘或装夹较重工作时,应用木版保护床面如工件不卸,应用千斤顶支承.2;机床类型和主要技术参数:CNC6132床身上最大回转直径--340mm最大加工长度--750mm主轴通孔直径--52mm主轴转速--100-2100r.p,m纵向进给最大速度--3m/min横向进给最大速度--3m/minX轴定位精度--±0.01Z轴定位精度--±0.02X轴重复定位精度--0.005mmZ轴重复定位精度--0.01mm主电机功率--4kw指令方式绝对值/增量值最大编程尺寸--±9999.999零件程序贮存量/程序量--6KB刀架刀数值43;机床结构的组成部分:车床主要由变速箱、主轴箱、挂轮箱、进给箱、溜板箱、卡盘,刀架、尾座、床身、丝杆、光杆和操纵杆/操作面板(显示器`软键盘)组成.调速方式:变速齿轮调速方式,带传动方式,两个电动机分别驱动调速方式.4;刀具的选折:数控刀具的选择决定了切削用量的确定,是数控加工工艺中的重要过程.它不仅影响数控机床的加工效率,而且直接影响加工质量,同时也对操作者安全问题有影响.应根据机床的加工能力、工件材料的性能、加工工序、切削用量以及其它相关因素正确选用刀具.因此刀具的选折很重要.5;我们所用的刀具材料和刀具有:高速钢刀具;硬质合金刀具等.外圆刀.螺纹刀和切断刀.6;要根据被加工工件的形状来选刀具:要考虑零件是否能够加工出来,以避免少切后者过切的现象.结合工件材料来选折刀具,考虑工件材料个刀具材料的硬度,选好刀具才能进行加工,避免在切削过程中出现打刀问题.根据机床主轴转数和切削用量来选折刀具7;编程和输入程序:按照老师给我的工件图纸和尺寸进行编写,我们常用到的主要编程指令有/G90,G71,G72,G73.和程序主要字符:O程序名,T刀具符号,M字符:M03主轴顺时针旋转;F字功能用于控制切削进给量;S字功能控制主轴转速;G00快速定位G01直线插补指令;G02/G03顺逆圆弧插补和M30程序停止.将编好的程序在机床控制面板上进行输入,过程中可以对程序进行检查和摸拟走刀.程序准备好之后就可以按照操作规程进行操作加工.8;工件校正:可采用目测方法,和仪器校正法,达到工件和主轴旋转中心线平行即可.9;对刀:首先沿x轴方向切一外圆,用千分尺测量工件直径,取得读数再平端面,完后输入x/z坐标值.其他刀具在实习过程中我门都采用类似方法.10;加工操作和加工对象:在控制面板进行调制在参数中对进给陪率和主轴陪率值进行修调如:30%`60%`80%.和主轴转数S500.精度高的回转体工件.表面粗糟度小的回转体零件.轮廓复杂的回转体零件.第五篇:计算机网络实习报告计算机网络实习报告20XX110302130李维茜这四个周,我们在北京协力超越科技有限公司进行了有关计算机网络的实习。本次实习主要围绕两台计算机之间的通信展开,让我们从理论和实践上了解了两台计算机之间是如何通信的,这其中主要包含了带交换机和路由器的该如何进行配置。我们在实验中主要以中兴的ZXR1800设备为实验对象,对三级交换机和二级路由器的具体使用进行了了解。刚开始我们主要致力于理论的学习,这一部分在学校里也学习了不少,所以理解起来相对比较轻松。首先,老师让我们又熟悉了一下OSI的七层结构模型以及每一层对应的相关知识。我从中知道了,由上而下,计算机网络主要是应用层、表示层、会话层、传输层、网络层、数据链路层和物理层,并且,老师主要讲解了比较重要的物理层、链路层和网络层。在物理层,数据是以比特流的形式进行传送;在链路层中,主要的设备是交换机,它为数据封装和解封装MAC地址形成数据帧;而在网络层中,路由器为数据封装和解封装IP地址,形成数据包;在上一层——运输层中,数据是以数据段的形式进入网络层。接下来,我又了解了关于这几层中的设备的一些知识。在划分冲突域和广播域方面,集线器对于二者都不可以进行分割;交换机可以对冲突域进行分割,但不可以对广播域进行分割,不过利用VLAN也可以实现广播域的分割,这在后面老师对我们进行了详尽的解释;而路由器对于冲突域和广播域都可以进行分割。同时,我们还学习了如何为公司的不同部分配子网。IP地址分为A类、B类和C类,A类地址是从~55(其中~55是私网地址);B类地址是从~55(其中~55是私网地址);C类地址是从~55(其中~55是私网地址)。在第一天课的实验中,我们主要进行了路由器和交换机之间的转换和相关配置。当进入到超级终端后进入到全局配置模式,在该模式中输入命令porttypeslot1/2时,既可以使ZXR1800在二层路由器和三层交换机之间进行转换。转换之后,可以通过命令为设备的百兆端口和千兆端口赋一个I

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论