欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    C#网络应用编程(2008).pdf

    • 资源ID:76251772       资源大小:51.25KB        全文页数:12页
    • 资源格式: PDF        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C#网络应用编程(2008).pdf

    第 1 页共 12 页河南大学计算机与信息工程学院2007 2008学年第二学期期末考试网络开发技术试卷考试方式:闭卷考试时间:120 分钟卷面总分:100 分一、选择题(选择最确切的一个答案,将其代码填入括号中,本题共15 题,每题 1 分,共 15 分)1下列描述中哪个不是UDP 的特点()A.传输消息无消息边界。B.可以以广播或组播的方式发送数据。C.一种无连接的协议。D.不保证数据到达的顺序与数据发出的顺序相同。2为了确定是否是创建控件的线程访问该控件的对象,需要检查的属性是()A.Visible B.InvokeRequired C.CanSelect D.Enabled 3什么是 CPU 调度和分配的基本单位()A.线程B.进程C.程序D.线程池4利用 TCP 进行通信时,发送方第一次发送的字符串为“4567”,第二次发送的字符串为“abcd”,接收方不可能出现的情况为()A.第一次接收 4567,第二次接收 abcd B.第一次接收 4567a,第二次接收 bcd C.第一次接收 4567,第二次接收 abc,第三次接收 d D.第一次接收 456,第二次接收 abcd 5Process 类提供了获取本机和远程计算机上相关进程的方法,下列哪个方法用于获取本机所有的进程。()题得分评阅人号一二三四五总成绩合分人得分第 2 页共 12 页A.GetProcessesByName B.GetProcessByID C.GetProcessByName D.GetProcesses 6下列说法不正确的是()A:组播组是开放的,可以随时加入到组播组中,也可以随时离开。B.组播消息不能穿越子网。C.组播通信时不需要向组播组发起连接请求。D.组播地址范围在 224.0.0.0-239.255.255.255。7当利用 FTP 协议传输文本时,应采用哪种传输方式()A.ASCII B.二进制C.Unicode D.GB-2312 8发送电子邮件经常使用的协议是()A.POP3 B.SMTP C.FTP D.P2P 9下列中那个不是进行邮件发送和接收时常用的类()A.Attachment B.SmtpClient C.MailMessage D.FtpWebRequest 10下列描述不正确的是:()A.P2P 是一种新的网络传输协议。B.P2P 架构中若存在中央服务器,则该服务器起到促成各节点协调的功能。C.常见的 P2P软件有 PPLIVE、QQ、POPO、BT。D.服务器和客户端通信需要知道对方使用的IP 地址和端口号。11在 FTP 协议中建立控制连接时服务器使用的端口是()A.21 B.110 C.80 D.81 12下列说法不正确的是()A.不对称加密算法能够使用流进行处理,所以速度较快。B.HASH 算法对不同的数据加密不可能得到相同的结果。C.不对称加密算法用公钥加密的数据只能用私钥解密。D.对称加密算法加密和解密数据使用同一个密钥。13 确实需要保存密钥时,比较安全的办法是应该保存在哪里()。A.XML B.文本C.程序中D.密钥容器14下面算法中不对称加密算法为()。第 3 页共 12 页A.RC2 B.DES C.TripleDES D.RSA.15XNA 中通过内容管道加载的资源利用什么属性访问()。A.Asset Name B.fileName C.Name D.File 二、填空题(每空 1分,共 15 分)1C 类网络地址 192.168.3.5,使用子网掩码 255.255.255.0,则本地广播地址为()。2如果一个线程 t1 在执行的过程中需要等待另一个线程t2 结束后才能继续执行,可以在线程t1 调用线程()的()方法。3()是网络通信的基本操作单元,()对象是专门用于网络通信的数据流。4FTP 协议在建立数据连接时,支持两种工作模式()、()。5在SMTP 中,电子邮件由三部分组成:()()()。6.在 XNA Framework 2.0 中有三种特殊类型的矩阵:()()()。7P2P的设计模式有()()两类。三、简答题(每题 6分,共 30 分)1.什么是数据完整性验证?简要回答如何实现数据完整性验证?。答:得分评阅人得分评阅人学号:姓名:年级:专业:?密?封?线?第 4 页共 12 页2.解决 TCP 协议的无消息边界问题一般有几种方法?它们适合哪些场合?答:3.简述 P2P和传统的 C/S 模式相比有哪些优缺点?答:4.什么是线程同步?如何实现线程同步?答:第 5 页共 12 页5.简述 POP3工作原理。答:四、程序分析题(本题共 1 题,共 10 分)1分析下面的程序,并回答下列问题。(共 10 分)class Program private int n1,n2,n3;EventWaitHandle myEventWaitHandle=new EventWaitHandle(false,EventResetMode.ManualReset);static void Main(string args)Program p=new Program();Thread t0=new Thread(p.ReadThread)Thread t1=new Thread(p.WriteThread)t0.Start()t1.Start()Console.ReadLine();得分评阅人学号:姓名:年级:专业:?密?封?线?第 6 页共 12 页/写方法private void WriteThread()myEventWaitHandle.Reset();Console.WriteLine(t1);n1=2;n2=4;n3=5;myEventWaitHandle.Set();/读方法private void ReadThread()myEventWaitHandle.WaitOne();Console.WriteLine(0+1+2=3,n1,n2,n3,n1+n2+n3);(1)写出程序的运行结果。(6分)(2)myEventWaitHandle.WaitOne()的含义是什么?(2 分)(3)myEventWaitHandle.Set()的含义是什么?(2 分)第 7 页共 12 页五、设计题(本题共 3 题,共 30 分)1现有一个 Windows 应用程序,利用TCP实现服务端功能。下面列出了相应的事件及部分代码,请在下列选项中选择最确切的答案,将完成事件功能的代码填写完整。(10 分)A Start()B AcceptTcpClient()C Begin()D IPHostEntry E Dns F AcceptSoket()G sr.ReadLine()H sr.ReadString()I client.GetStream()J GetValue()K Accept()L new NetWorkStream()(1)单击启动监听,则在本机第一个可用IP 地址、端口 3035 上启动 TCP监听,等待客户端的连接,每当接收到一个客户端连接请求后,启动一个线程负责接收并处理该客户端发送过来的信息。private TcpListener myListener;private void button1_Click(object sender,EventArgs e)String name=Dns.GetHostName();/获取本机所有 IPAddress IPAddress allIP=_.GetHostAddresses(name);IPAddress ip=allIP0;myListener=new TcpListener(ip,port)/启动监听myListener._;Thread threadListenClient=new Thread(ListenClientConnet);threadListenClient.Start();(2)ListenClientConnet 方法负责接收客户端的连接请求。private void ListenClientConnect()得分评阅人学号:姓名:年级:专业:?密?封?线?第 8 页共 12 页 while(true)TcpClient newClient=null;try /等待用户进入newClient=myListener._;catch break;Thread receiveDataThread=new Thread(ReceiveData);receiveDataThread.Start(newClient);(3)补充负责接收数据的ReceiveData方法。private void ReceiveData(object obj)TcpClient client=(TcpClient)obj;bool exitWhile=false;while(exitWhile=false)string receiveString=null;try /方法获取网络流NetWorkStream stream=_;/利用 StreamReader对网络流进行封装StreamReader sr=new StreamReader(stream);第 9 页共 12 页/利用 sr读取数据receiveString=_;catch service.SetListBox(接收数据失败);答:2现有一个 Windows 应用程序,该程序利用组播技术实现网络会议讨论。该会议使用组播组地址为224.0.0.1,通讯端口为 3035。下面是完成此功能的核心代码框架,在下列选项中选择最确切的答案,将完成事件功能的代码填写完整。(10分)A.UTF8 B GetBytes C ip D iep E ref remote F remote G IPAddress H GetValue I ASCII J GetString(1)将 SendToAll 方法填写完整。该方法实现加入到组播组中,并向组播组发送组播消息的功能。private void SendToAll(String strMessage)UdpClient myUdpClient=new UdpClient();IPAddress ip=IPAddress.Parse(224.0.0.1);myUdpClient.EnableBroadcast=true;/实例化通讯用端点IPEndPoint iep=new IPEndPoint(ip,3035);/加入组播组udpClient.JoinMuticastGroup(_);udpClient.Ttl=30;/将 strMessage转换为 UTF8 字节数组Byte bytes=Encoding.UTF8._(strMessage)学号:姓名:年级:专业:?密?封?线?第 10 页共 12 页try /向子网发送信息udpClient.Send(bytes,bytes.Length,_);catch(Exception err)MessageBox.Show(err.Message,发送失败);finally myUdpClient.Close();(2)ReceiveData方法负责在端口 3035 接收组播消息。private void ReceiveData()/在本机指定的端口接收udpClient=new udpClient(3035);IPEndPoint remote=null;while(true)try /接收从远程主机发送过来的信息;byte bytes=udpClient.Receive(_);/将接收到的字节数组转化为字符串;string str=Encoding._.GetString(bytes);AppendString(string.Format(来自0:1,remote,str);catch break;第 11 页共 12 页答:3(1).NET 基类库使用的私钥算法类采用的加密模式是密码本模式还是密码块链模式?如果有两个内容相同的原始数据块,使用.NET 提供的对称加密类,使用相同的私钥进行加密,那么得到的加密后的两个数据块是否相同?并给出理由。(4 分)答:(2)方法 EnCryptText 实现利用 TripleDES 算法对字符串的加密,下面列出了加密方法的部分代码,选择最确切的答案,将完成事件功能的代码填写完整。(6 分)A cryptoStream B memoryStream C ToArray()D ToCharArray()E Abort()F Close()/toEncrypt 待加密字节数组/Key 算法使用密钥/IV 算法使用向量private byte EncryptText(BYTE toEncrypt,byte Key,byte IV)/创建一个内存流MemoryStream memoryStream=new MemoryStream();/使用内存流、私钥和IV 创建加密流,补充第1 个参数。CryptoStream cryptoStream=new CryptoStream(_,new TripleDESCryptoServiceProvider().CreateEncryptor(Key,IV),CryptoStreamMode.Write);学号:姓名:年级:专业:?密?封?线?第 12 页共 12 页try /将字节数组写入加密流cryptoStream.Write(toEncrypt,0,toEncrypt.Length)cryptoStream.FlushFinalBlock();byte encryptedBytes=memoryStream._;return encryptedBytes;catch(CryptographicException err)throw new Exception(加密出错:+err.Message);finally /关闭加密流cryptoStream._;memoryStream.Close();答:

    注意事项

    本文(C#网络应用编程(2008).pdf)为本站会员(索****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开