域名服务器的仿真模拟程序Word文档下载推荐.docx

上传人:b****2 文档编号:15381423 上传时间:2022-10-29 格式:DOCX 页数:37 大小:29.03KB
下载 相关 举报
域名服务器的仿真模拟程序Word文档下载推荐.docx_第1页
第1页 / 共37页
域名服务器的仿真模拟程序Word文档下载推荐.docx_第2页
第2页 / 共37页
域名服务器的仿真模拟程序Word文档下载推荐.docx_第3页
第3页 / 共37页
域名服务器的仿真模拟程序Word文档下载推荐.docx_第4页
第4页 / 共37页
域名服务器的仿真模拟程序Word文档下载推荐.docx_第5页
第5页 / 共37页
点击查看更多>>
下载资源
资源描述

域名服务器的仿真模拟程序Word文档下载推荐.docx

《域名服务器的仿真模拟程序Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《域名服务器的仿真模拟程序Word文档下载推荐.docx(37页珍藏版)》请在冰豆网上搜索。

域名服务器的仿真模拟程序Word文档下载推荐.docx

stdio.h>

structwebaddress//地址簿格式

{

charwww[5];

charname[9];

charadm[5];

charcountry[4];

webaddress*next;

//增加指针变量,作为链表进行操作

};

webaddress*head=NULL;

//全局变量,链表头

voidInitial(void)

cout<

<

"

*******************************\n"

;

欢迎使用域名服务器查程序\n"

请选择以下功能\n"

\n"

1.查询数据\n"

2.插入数据\n"

3.删除数据\n"

4.打印全部数据\n"

5.退出\n"

\n"

}

voidFill(webaddress*pt1,char*TempChar)

inti,j;

intdot=0;

staticcharstr[10];

for(j=0;

TempChar[j]!

='

\0'

j++)

{

TempChar[j]=tolower(TempChar[j]);

//将输入的字符串变成小写

if(TempChar[j]=='

.'

dot++;

//统计.数

}

if(dot==0)

cout<

数据格式错误,未插入数据!

return;

for(i=0;

i<

4;

i++)

str[i]=TempChar[i];

str[i]='

if(strcmp(str,"

www."

)==0)

strcpy(pt1->

www,str);

dot--;

j=i;

else

j=0;

www,"

);

&

i++,j++)

str[i]=TempChar[j];

j=j+1;

dot--;

strcpy(pt1->

name,str);

adm,str);

dot;

country,str);

return;

voidInsert(webaddress*pt)

webaddress*pt1,*pt2;

pt1=pt2=head;

if(head==NULL)

{

head=pt;

pt->

next=0;

return;

if(strcmp(head->

name,pt->

name)>

=0)

next=head;

head=pt;

pt2=pt1=head;

while(pt2->

next&

strcmp(pt2->

name)<

0)

pt1=pt2;

pt2=pt2->

next;

if(strcmp(pt2->

{

pt2->

next=pt;

next=0;

next=pt2;

pt1->

return;

voidPrint(webaddress*pt)

pt->

www<

name<

'

adm<

country<

endl;

voidLookUpData(void)

webaddress*pt;

charwebname[10];

输入域名的名称\n"

cin>

>

webname;

pt=head;

while(pt)

if(strcmp(webname,pt->

name)==0)

{

cout<

查找出的域名为:

Print(pt);

break;

}

pt=pt->

if(pt==NULL)

数据文件中没有该地址\n"

cin.get();

voidInsertData(void)

charTempchar[22];

请输入要插入的域名\n"

cin.getline(Tempchar,22);

pt=newwebaddress;

Fill(pt,Tempchar);

Insert(pt);

voidDelete(char*Tempchar)

webaddress*p1,*p2;

charchoice;

if(head==NULL)

cout<

数据表为空,无域名可删!

if(strcmp(head->

name,Tempchar)==0)

p1=head;

存在该域名为:

Print(p1);

请确定是否删除该域名(y/n)?

cin>

choice;

if(choice=='

Y'

||choice=='

y'

head=head->

deletep1;

cout<

删除了该域名!

else

未删除域名!

p2=p1=head;

while(strcmp(p2->

name,Tempchar)!

=0&

p2->

next!

=NULL)

p1=p2;

p2=p2->

if(strcmp(p2->

name,Tempchar)==0)

Print(p2);

cin>

if(choice=='

{

p1->

next=p2->

deletep2;

cout<

}

else

cout<

elsecout<

数据表上没有找到要删除的域名!

voidDeleteData(void)

请输入要删除的域名的名称(第二个字段)\n"

cin.getline(Tempchar,22);

Delete(Tempchar);

voidPrintData(void)

if(head!

=0)

数据表中的域名有:

Print(pt);

voidmain(void)

intchoice;

do

Initial();

switch(choice)

case1:

LookUpData();

break;

case2:

InsertData();

case3:

DeleteData();

case4:

PrintData();

getchar();

break;

case5:

default:

选择错误!

}while(choice!

=5);

(1)解答

一、课程设计的解答说明如下:

本程序以链表的方式存储数据,基本结构比较合理,不需修改,在原有结构的基础上增加一些函数。

表的方法来解决问题有利于排序。

域名数据的基本格式是www.name.address.country;

但一些其他格式也应可以识别如:

name.address,没有www和country。

tm为time.h中定义的数据结构,内容如下:

structtm

inttm_sec;

//秒数0~59

inttm_min;

//分钟数0~59

inttm_hour;

//小时0~23

inttm_mday;

//月份日期1~31

inttm_mo

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 学科竞赛

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1