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

编写一个C语言函数,要求输入一个url,输出该url是首页、目录页或者其他url的更多相关文章

  1. python练习:编写一个程序,要求用户输入一个整数,然后输出两个整数root和pwr,满足0<pwr<6,并且root**pwr等于用户输入的整数。如果不存在这样一对整数,则输入一条消息进行说明。

    python练习:编写一个程序,要求用户输入一个整数,然后输出两个整数root和pwr,满足0<pwr<6,并且root**pwr等于用户输入的整数.如果不存在这样一对整数,则输入一条消息 ...

  2. js数据类型的检测总结,附面试题--封装一个函数,输入任意,输出他的类型

    一.javascript 中有几种类型的值 1.基本数据类型 : 包括 Undefined.Null.Boolean.Number.String.Symbol (ES6 新增,表示独一无二的值) 特点 ...

  3. Entity Framework 6 Recipes 2nd Edition(11-6)译 -> 从一个”模型定义”函数里返回一个复杂类型

    11-6.从一个”模型定义”函数里返回一个复杂类型 问题 想要从一个”模型定义”函数返回一个复杂类型 解决方案 假设我们有一个病人(patient)和他们访客(visit)的模型,如 Figure 1 ...

  4. C语言考题:输入一个字符串,将此字符串中特定的字符删去后, 显示新的字符串,要求用函数来完成删去字符的操作。

    #include <stdio.h> #include <string.h> /*此题只需要删除单个字符,比较简单.相信大家也能做出来的.我这个也是可以实现的.只是加了两个判断 ...

  5. 【C语言】请输入一个n(n<=10)并输出一个n行n列的杨辉三角

    应用二维数组的知识 杨辉三角特点: 1.第一列和对角线的元素全部为1 2.其他元素等于上一行的当前列的值和上一行中当前列前边一列的值之和 #include<stdio.h> #define ...

  6. 写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和

    例如,调用DigitSum(1729),则应该返回1+7+2+9,它的和是19. 思路:我们可以先将整数的每一个数字取出来,每次取个位数字,取完后退位(将数字除以10),在取个位数字,依次取出所有的数 ...

  7. nodejs怎么同步从一个数据库查询函数中返回一个值

    var sql=require('msnodesql'); var conn_str="Driver={SQL Server Native Client 11.0};Server={127. ...

  8. iOS_02_第一个C语言程序(理解编译、连接、运行)

    一.开发工具的选择 1. 可以用来写代码的工具:记事本.ULtraEdit.Vim.Xcode等. 2. 选择XCode的原因:苹果公司官方提供的开发利器.简化开发的工程.有高亮显示功能. 3. 使用 ...

  9. 03-第一个C语言程序的分析

    本文目录 一.代码分析 二.开发和运行C程序的步骤 三.总结 说明:这个C语言专题,是学习iOS开发的前奏.也为了让有面向对象语言开发经验的程序员,能够快速上手C语言.如果你还没有编程经验,或者对C语 ...

随机推荐

  1. python 之html的headers提取操作

    # -*- coding: cp936 -*- #python 27 #xiaodeng #python 之html的headers提取操作 # import urllib,urllib2 html= ...

  2. 小米路由Mini刷Breed, 潘多拉和LEDE

    1. 下载breed,地址 http://breed.hackpascal.net/ 2. 下载小米Mini的开发板rom, 地址 http://www1.miwifi.com/miwifi_down ...

  3. 基于酷Q的工作秘书机器人

    代码地址如下:http://www.demodashi.com/demo/14617.html 环境准备 名称 版本 Jdk 8 groovy 2.4.12 gradle 4.6 酷Q 5.12.3A ...

  4. 一个成功的 Git 分支模型

    在这篇文章中介绍的开发模型在大约一年前已经在我的私有项目和工作引入的,而且已经被证明是非常成功的.我想写一些关于这个模型的东西已经好一段时间了,但是一直苦于没有时间,不过现在可以了.我不想探讨任何项目 ...

  5. Easyui入门视频教程 第02集--- ASP.NET MVC下 搭建 EasyUI环境

    Easyui入门视频教程 第02集--- ASP.NET MVC下 搭建 EasyUI环境 目录 ----------------------- Easyui入门视频教程 第09集---登录完善 图标 ...

  6. iteye-Spring的缺点有哪些

    http://www.iteye.com/topic/1126929 1. flounders --  发表时间:2012-09-25    如题,希望大侠们指出,不能用Spring就觉得他什么都好, ...

  7. 推荐系统排序(Ranking)评价指标

      一.准确率(Precision)和召回率(Recall)  (令R(u)是根据用户在训练集上的行为给用户作出的推荐列表,而T(u)是用户在测试集上的行为列表.) 对用户u推荐N个物品(记为R(u) ...

  8. iOS 10 的一个重要更新-用 UIViewPropertyAnimator 编写动画

    曾经的黑暗年代 用基于 block 的 UIView animation 来编写 view 属性(frame, transform 等等)变化的动画非常简单.只需要短短几行代码: view.alpha ...

  9. 自动化运维之Cobbler自动化部署安装操作系统

    Cobbler概述: Cobbler可以用来快速建立 Linux 网络安装环境,它已将 Linux 网络安装的技术门槛,从大专以上文化水平,成功降低到初中以下,连补鞋匠都能学会. 在生产环境中,经常批 ...

  10. Zabbix 常见问题处理整理

    zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. 下载: http://www.zabbix.com/download.php 帮助:https://www ...