⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 样例.txt

📁 C语言课程设计:案例精选与编程指导(东南大学出版社
💻 TXT
字号:
#include<ctype.h>
#include<string.h>
#include<stdio.h>
#define Web struct web
Web   /*地址簿格式*/
{
   char szWww[5];
   char szNa[9];
   char szAdm[5];
   char szCountry[4];
};
Web *strpPtr[25];
void main()
{
  char szStr[21];
  char szStr1[21];
  int nChoice;
  char szCon[5]="www.";
  char szMainWww[5];
  char szMainNa[9];
  char szMainAdm[5];
  char szMainCoun[4];
  int nCounti=0;
  int nCountj=0;
  int nCountk=0;
  int nCount=0;
  int nBookNum;
  int nDot=0;
  printf("======================================================\n");
  printf("			Welcome To Domain Name Server Program!\n\n");
  printf("=======================================================\n");
  printf("Please select any nChoice from the following: \n\n");
  printf("[1] Look up a URL.\n");
  printf("[2] Insert a URL.\n");
  printf("[3] delete a URL.\n");
  printf("[4] Update a URL.\n");
  printf("[5] Quit.\n\n");
  scanf("%d", &nChoice);
  if(nChoice!=5 && nChoice!=4)
  {
     printf("Enter the URL.\n");
     getchar();
     gets(szStr);
  }
  for(nCountj=0;nCountj<22;nCountj++)
  {
     szStr[nCountj]=tolower(szStr[nCountj]);
     if(szStr[nCountj]=='.')
	nDot++;
  }
  for(nCount=0;nCount<25;nCount++)
     strpPtr[nCount]=NULL;
  if(nChoice==1)
  {
     for(nCounti=0;nCounti<4;nCounti++)
	szMainWww[nCounti]=szStr[nCounti];
     szMainWww[4]='\0';
     if( strcmp(szMainWww,szCon) != 0 )
     {
	szMainWww[0]='\0';
	for(nCounti=0,nCountj=0;szStr[nCounti]!='.' && szStr[nCounti]!='\0';nCounti++,nCountj++)
	   szMainNa[nCountj]=szStr[nCounti];
	szMainNa[nCountj]='\0';
	for(nCount=0,nBookNum=0;szMainNa[nCount] !='\0';nCount++)
	   nBookNum+=szMainNa[nCount];
	nBookNum = nBookNum % 25;
	if(strcmp(strpPtr[nBookNum]->szNa,szMainNa)==0)
	{
	   printf("The address is present in the data\n");
	   printf("%s%s%s%s\n", strpPtr[nBookNum]->szWww, strpPtr[nBookNum]->szNa, strpPtr[nBookNum]->szAdm, strpPtr[nBookNum]->szCountry);
	}
	else
	   printf("No matching address found");
     }
     else
     {
	for(nCounti=4,nCountj=0;szStr[nCounti]!='.' && szStr[nCounti]!='\0';nCounti++,nCountj++)
	    szMainNa[nCountj]=szStr[nCounti];
	szMainNa[nCountj]='\0';
	for(nCount=0;szMainNa[nCount] !='\0';nCount++)
	    nBookNum+=szMainNa[nCount];
	nBookNum = nBookNum % 25;
	if(strcmp(strpPtr[nBookNum]->szNa,szMainNa)==0)
	{
	    printf("The address is present in the data\n");
	    printf("%s%s%s%s\n", strpPtr[nBookNum]->szWww, strpPtr[nBookNum]->szNa, strpPtr[nBookNum]->szAdm, strpPtr[nBookNum]->szCountry);
	}
	else
	    printf("No matching address found\n");
     }
  }
  if(nChoice==2)
  {
      for(nCounti=0;nCounti<4;nCounti++)
	 szMainWww[nCounti]=szStr[nCounti];
      szMainWww[4]='\0';
      for(nCounti=4,nCountj=0;szStr[nCounti]!='.';nCounti++,nCountj++)
	 szMainNa[nCountj]=szStr[nCounti];
      szMainNa[nCountj]='\0';
      for(nCount=0,nBookNum=0;szMainNa[nCount] !='\0';nCount++)
	 nBookNum+=szMainNa[nCount];
      nBookNum = nBookNum % 25;
      strpPtr[nBookNum]=(Web *)malloc(sizeof(Web));
      szMainAdm[0]='.';
      for(nCounti++,nCountj=1;szStr[nCounti]!='.' && szStr[nCounti]!='\0';nCounti++,nCountj++)
	 szMainAdm[nCountj]=szStr[nCounti];
      szMainAdm[nCountj]='\0';
      if(nDot==3)
      {
	 szMainCoun[0]='.';
	 for(nCounti++,nCountj=1;szStr[nCounti]!='\0';nCounti++,nCountj++)
	    szMainCoun[nCountj]=szStr[nCounti];
	 szMainCoun[3]='\0';
      }
      else
	 szMainCoun[0]='\0';
      strcpy(strpPtr[nBookNum]->szWww,szMainWww);
      strcpy(strpPtr[nBookNum]->szNa,szMainNa);
      strcpy(strpPtr[nBookNum]->szAdm,szMainAdm);
      strcpy(strpPtr[nBookNum]->szCountry,szMainCoun);
      printf("The address is successfully registered in the data\n");
  }
  if(nChoice==3)
  {
      for(nCounti=0;nCounti<4;nCounti++)
      szMainWww[nCounti]=szStr[nCounti];
      szMainWww[4]='\0';
      for(nCounti=4,nCountj=0;szStr[nCounti]!='.';nCounti++,nCountj++)
	 szMainNa[nCountj]=szStr[nCounti];
      szMainNa[nCountj]='\0';
      for(nCount=0;szMainNa[nCount] !='\0';nCount++)
	 nBookNum+=szMainNa[nCount];
      nBookNum = nBookNum % 25;
      szMainAdm[0]='.';
      for(nCounti++,nCountj=1;szStr[nCounti]!='.' && szStr[nCounti]!='\0';nCounti++,nCountj++)
	 szMainAdm[nCountj]=szStr[nCounti];
      szMainAdm[nCountj]='\0';
      if(nDot==3)
      {
	 szMainCoun[0]='.';
	 for(nCounti++,nCountj=1;szStr[nCounti]!='\0';nCounti++,nCountj++)
	    szMainCoun[nCountj]=szStr[nCounti];
	 szMainCoun[3]='\0';
      }
      else
	 szMainCoun[0]='\0';
      if(strcmp(strpPtr[nBookNum]->szNa,szMainNa)==0 && strcmp(strpPtr[nBookNum]->szAdm,szMainAdm)==0 && strcmp(strpPtr[nBookNum]->szCountry,szMainCoun)==0)
	 strpPtr[nBookNum]=NULL;
  }
  if(nChoice==4)
  {
     printf("Enter the old URL.\n");
     getchar();
     gets(szStr);
     for(nCountj=0;nCountj<22;nCountj++)
     {
	 szStr[nCountj]=tolower(szStr[nCountj]);
	 if(szStr[nCountj]=='.')
	    nDot++;
     }
     for(nCounti=4,nCountj=0;szStr[nCounti]!='.';nCounti++,nCountj++)
     szMainNa[nCountj]=szStr[nCounti];
     szMainNa[nCountj]='\0';
     for(nCount=0;szMainNa[nCount] !='\0';nCount++)
	nBookNum+=szMainNa[nCount];
     nBookNum = nBookNum % 25;
     if(strcmp(strpPtr[nBookNum]->szNa,szMainNa)!=0)
	printf("The address is not in the data to be updated\n");
    else
    {
	printf("Enter the new URL");
	getchar();
	gets(szStr1);
	for(nCountj=0;nCountj<22;nCountj++)
	{
	   szStr1[nCountj]=tolower(szStr1[nCountj]);
	   if(szStr1[nCountj]=='.')
	      nDot++;
	}
	for(nCounti=0;nCounti<4;nCounti++)
	   szMainWww[nCounti]=szStr1[nCounti];
	szMainWww[4]='\0';
	for(nCounti=4,nCountj=0;szStr1[nCounti]!='.';nCounti++,nCountj++)
	   szMainNa[nCountj]=szStr1[nCounti];
	szMainNa[nCountj]='\0';
	for(nCount=0;szMainNa[nCount] !='\0';nCount++)
	   nBookNum+=szMainNa[nCount];
	nBookNum = nBookNum % 25;
	szMainAdm[0]='.';
	for(nCounti++,nCountj=1;szStr1[nCounti]!='.' && szStr1[nCounti]!='\0';nCounti++,nCountj++)
	   szMainAdm[nCountj]=szStr1[nCounti];
	szMainAdm[nCountj]='\0';
	if(nDot==3)
	{
	   szMainCoun[0]='.';
	   for(nCounti++,nCountj=1;szStr1[nCounti]!='\0';nCounti++,nCountj++)
	      szMainCoun[nCountj]=szStr1[nCounti];
	   szMainCoun[3]='\0';
	}
	else
	   szMainCoun[0]='\0';
	strcpy(strpPtr[nBookNum]->szWww,szMainWww);
	strcpy(strpPtr[nBookNum]->szNa,szMainNa);
	strcpy(strpPtr[nBookNum]->szAdm,szMainAdm);
	strcpy(strpPtr[nBookNum]->szCountry,szMainCoun);
	printf("The address is successfully updated in the data.\n");
    }
  }
  printf("		 Thank You !\n\n");
  printf("=========================================\n");
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -