编写一个C语言函数,要求输入一个url,输出该url是首页、目录页或者其他url

时间:2023-11-23 13:36:38

编写一个C语言函数,要求输入一个url,输出该url是首页、目录页或者其他url

首页、目录页或者其他url
  如下形式叫做首页:
 militia.info/

 www.apcnc.com.cn/

 http://www.cyjzs.comwww.greena888.com/

 www.800cool.net/

 http://hgh-products.my-age.net/

 如下形式叫做目录页:
 thursdaythree.net/greenhouses--gas-global-green-house-warming/

 http://www.mw.net.tw/user/tgk5ar1r/profile/

 http://www.szeasy.com/food/yszt/chunjie/

 www.fuckingjapanese.com/Reality/

请注意:

 a)url有可能带http头也有可能不带
 b)动态url(即含有"?"的url)的一律不算目录页,如:
 www.buddhismcity.net/utility/mailit.php?l=/activity/details/3135/

 www.buddhismcity.net/utility/mailit.php?l=/activity/details/2449/

 另:如果你会linux,请用linux下的grep命令实现第2题的功能(附加5分)。

/*************************************************************************
> File Name: urlCheck.c
> Author: Jason
> Created Time: 2014年06月09日 星期一 23时27分33秒
************************************************************************/ #include<stdio.h> //判断url 如果返回1 则说明是 主页,返回2 目录页,返回3 其他。
int checkUrl(char *url)
{
char *src = url;
int i, len = strlen(src);
int flag = ;
for(i = len-;i >= ;i--)
{
if(src[i]=='?')return ;
if(src[i]=='/'&&src[i+]=='/')i--;
if(src[i]=='/'&&src[i-]!='/')flag = ;
}
return flag;
} int main()
{
char str[];//假设输入的字符串不会长于100;
while(){
scanf("%s",str);
int flag = checkUrl(str);
if(flag==)
printf("%s\t首页\n",str);
else if(flag==)
printf("%s\t目录页\n",str);
else if(flag==)
printf("%s\t其他\n",str);
else break;
}
return ;
}