欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    面向图书管理系统 TCP协议 LINUX平台.docx

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

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

    面向图书管理系统 TCP协议 LINUX平台.docx

    1、面向图书管理系统 TCP协议 LINUX平台成都信息工程学院课程设计报告面向连接的图书信息查询系统课程名称: 高级程序设计语言B 学生姓名: 学生学号: 专业班级: 任课教师: 附件:成绩评价表成绩评定表程序编译和功能演示(30%)编程代码质量(10%)编程水平与程序设计能力(30%)程序设计说明书(论文)撰写质量(30%)总分目 录1. 程序设计 32. 程序功能模块详细设计(源代码+程序说明) 33. 程序功能演示和测试结果 4结论 41. 程序设计1.1程序设计目标根据套接字编程知识,采用面向连接TCP协议,实现服务器端存储图书基本信息,用户可通过客户端输入书名或者出版社,或者价格或者出

    2、版时间,查询到书的基本情况。1)客户端可以连接服务器端,服务器端显示连接客户端连接信息(即客户端IP地址),客户端显示连接成功或者失败信息;2)客户端输入书名,然后发送给服务器,服务器则查询是否有该书,若有则服务器把该书的基本信息(包括书名,出版社,出版时间,价格)相关信息返回给客户端,客户端收到,则显示出来3)客户端输入出版社,然后发送给服务器,服务器则查询是否符合出版社条件的书籍,若有则服务器把找到符合出版社名称书的基本信息全部发送给客户端(包括书名,出版社,出版时间,价格)相关信息返回给客户端,客户端收到,则显示出来4)与第3不类似,输入价格或者出版时间,则服务器端把符合此价格或者出版时

    3、间的书结果返回客户端,则显示出来;5)在客户端输入“quit”,服务器端终止该客户端连接,客户端程序结束。1.2 程序运行环境*linux 操作系统 编译工具: gcc1.3 程序功能模块设计*2. 程序功能模块详细设计(源代码+程序说明)2.1服务器端*#include #include#include#include#include#include#include#include#include #define PORT 6666#define BUFFERSIZE 1024 struct BOOK char MING30; char chuban30; char cash30; char

    4、 time30; stu11=name:C,from:Qinghua colleg,cost:11,time:2012.1.3,name:DIAN,from:Bei Jin,cost:35,time:2003,2,3,name:SHUZHI,from:CUIT,cost:99,time:2008.1.2,name:AAA,from:NB,cost:23,time:1999.2.3,name:BBB,from:NIKE,cost:1,time:0034.2.3,name:DDD,from:WWW,cost:12,time:2012.3.4,name:FFF,from:EWF,cost:39,ti

    5、me:2006.3.4,name:SSS,from:ASD,cost:33,time:2004.3.4,name:QQQ,from:MM,cost:33,time:2013.2.4,name:Q1989,from:FG,cost:12,time:1999.9.3,name:ZZZ,from:WWW,cost:11,time:2999.3.5;int main() int sockfd,newfd ; struct sockaddr_in my_addr; struct sockaddr_in their_addr; unsigned int sin_size,listnum; listnum=

    6、0; if(sockfd=socket(AF_INET,SOCK_STREAM,0)=-1) printf(socket errorn); exit(-1); bzero(&my_addr, sizeof(my_addr); my_addr.sin_family=AF_INET; my_addr.sin_port=htons(PORT); my_addr.sin_addr.s_addr= htonl(INADDR_ANY); /bzero(&my_addr.sin_zero,0); if(bind(sockfd,(struct sockaddr*)&my_addr,sizeof(struct

    7、sockaddr)=-1) printf(bind errorn); exit(-1); if(listen(sockfd,listnum)=-1) printf(listen errorn); exit(-1); sin_size=sizeof(struct sockaddr_in);while(1) if(newfd=accept(sockfd,(struct sockaddr*)&their_addr,&sin_size)=-1) printf(accept errorn); exit(-1); printf(link starn); send(newfd,welcome to my s

    8、ervern,22, 0); / printf(you get a connection from %sn, inet_ntoa(their_addr.sin_addr); char sock_bufBUFFERSIZE; bzero(sock_buf,BUFFERSIZE); int rval; if(rval=recv(newfd,sock_buf,BUFFERSIZE,0)= -1) printf(Recv errorn); exit(-1); else if (!strcmp(sock_buf,quit) break; send(newfd,break!,BUFFERSIZE,0);

    9、else /printf(find: %sn,sock_buf); int i=0; for(i=0;i11) send(newfd,cant findn,BUFFERSIZE,0); printf(cant findn); break; close(newfd); close(sockfd); 2.2客户端*#include #include#include#include#include#include#include#include#include #define PORT 6666/#define DEF_IP 127.0.0.1int main(int argc, char *arg

    10、v) int sockfd,zzm; char buffer1024; struct sockaddr_in server_addr; struct hostent *host; int portnumber,nbytes; if(sockfd=socket(AF_INET,SOCK_STREAM,0)=-1) printf(socket ERRORn); exit(1); if (argc != 2) printf(Usage: %s n, argv0); exit(-1); if (host = gethostbyname(argv1) = NULL) perror(gethostbyna

    11、me error.); exit(1); if (sockfd = socket(AF_INET, SOCK_STREAM, 0) = -1) perror(Create socket failed.); exit(1); bzero(&server_addr,sizeof(server_addr); server_addr.sin_family=AF_INET; server_addr.sin_port=htons(PORT);/server_addr.sin_addr.s_addr=inet_addr(DEF_IP); server_addr.sin_addr = *(struct in_

    12、addr*) host-h_addr); if(connect(sockfd,(struct sockaddr*)&server_addr,sizeof(struct sockaddr)=-1) printf(connect 澶辫触n); exit(1); if( (zzm = recv(sockfd, buffer, 1024, 0) = -1) perror(recv error.); exit(1); printf(Server Message: %sn,buffer);while(1) printf(find:n); scanf(%s,buffer); send(sockfd,buff

    13、er,1024,0); int rval=0; memset(buffer,0,sizeof(buffer); if(rval=recv(sockfd,buffer,1024,0)0) printf(Recv errorn); exit(1); else char *pbuf=buffer; printf(The end: %sn,pbuf); pbuf+=30; printf(%sn,pbuf); pbuf+=30; printf(%sn,pbuf); pbuf+=30; printf(%sn,pbuf); break; 3. 程序功能演示和测试结果*结论*本程序实现了设计的所以要求,运行流畅功能正常。完成了本次程序设计的要求。


    注意事项

    本文(面向图书管理系统 TCP协议 LINUX平台.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

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




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开