编写一个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/

 

请注意:

 

 aurl有可能带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 = 1;
    for(i = len-2;i >= 0;i--)
    {
        if(src[i]=='?')return 3;
        if(src[i]=='/'&&src[i+1]=='/')i--;
        if(src[i]=='/'&&src[i-1]!='/')flag = 2;
    }
    return flag;
}

int main()
{
    char str[100];//假设输入的字符串不会长于100;
    while(1){
        scanf("%s",str);
        int flag = checkUrl(str);
        if(flag==1)
            printf("%s\t首页\n",str);
        else if(flag==2)
            printf("%s\t目录页\n",str);
        else if(flag==3)
            printf("%s\t其他\n",str);
        else break;
    }
        return 0;
}
复制代码

 

 

 






本文转自NewPanderKing51CTO博客,原文链接:http://www.cnblogs.com/newpanderking/p/3779086.html ,如需转载请自行联系原作者


相关文章
|
1月前
|
存储 编译器 C语言
爱上C语言:函数递归,青蛙跳台阶图文详解
爱上C语言:函数递归,青蛙跳台阶图文详解
|
19天前
|
C语言
C语言:内存函数(memcpy memmove memset memcmp使用)
C语言:内存函数(memcpy memmove memset memcmp使用)
|
5天前
|
存储 编译器 C语言
C语言:字符函数 & 字符串函数 & 内存函数
C语言:字符函数 & 字符串函数 & 内存函数
12 2
|
13天前
|
缓存 安全 编译器
【C 言专栏】C 语言函数的高效编程技巧
【5月更文挑战第1天】本文探讨了C语言中函数的高效编程技巧,包括函数的定义与作用(如代码复用和提高可读性)、设计原则(单一职责和接口简洁)、参数传递方式(值传递、指针传递和引用传递)、返回值管理、调用约定、嵌套与递归调用,以及函数优化技巧和常见错误避免。掌握这些技巧能提升C语言代码的质量和效率。
【C 言专栏】C 语言函数的高效编程技巧
|
16天前
|
C语言
pta浙大版《C语言程序设计(第3版)》 习题6-4 使用函数输出指定范围内的Fibonacci数 (20分)
pta浙大版《C语言程序设计(第3版)》 习题6-4 使用函数输出指定范围内的Fibonacci数 (20分)
|
16天前
|
C语言
pta 浙大版《C语言程序设计(第3版)》题目集 习题6-6 使用函数输出一个整数的逆序数 (20分)
pta 浙大版《C语言程序设计(第3版)》题目集 习题6-6 使用函数输出一个整数的逆序数 (20分)
|
16天前
|
C语言
(浙大版《C语言程序设计(第3版)》 习题6-5 使用函数验证哥德巴赫猜想 (20分)
(浙大版《C语言程序设计(第3版)》 习题6-5 使用函数验证哥德巴赫猜想 (20分)
|
18天前
|
安全 C语言
【C语言】strcpy与strncpy函数的使用和模拟实现
【C语言】strcpy与strncpy函数的使用和模拟实现
5 0
|
18天前
|
C语言
【C语言】字符分类函数与字符转换函数
【C语言】字符分类函数与字符转换函数
10 1
|
18天前
|
程序员 编译器 C语言
C语言之函数与参数
C语言之函数与参数
8 0