编写一个C语言函数,要求输入一个url,输出该url是首页、目录页或者其他url
2014-06-09 23:57
281 查看
编写一个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分)。
首页、目录页或者其他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 = 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; }
相关文章推荐
- 编写一个C语言函数,要求输入一个url,输出该url是首页、目录页或者其他url
- 编写一个多线程函数实现对数组排序,要求: 1.至少用两个线程 2.数组的元素值可以事先定义好,或者可以从键盘输入(增加一个线程)。 3.用一个线程对数组排序,用另一个线程输出排序结果。 4.保证先排好序,再输出。
- H面试程序(1)编写一个函数,要求输入年月日时分秒,输出该年月日时分秒的 下一秒
- 编写程序:从键盘上输入若干个整数(以输入-1作为结束标识),输出这些数中的最大值和最小值,要求编写一个函数实现最大值和最小值的求取。
- Java编写一个截取字符串的函数,输入一个为字符串和字节数,输出按字节截取的字符串。要求不能出现截半的情况
- C语言 编写一个程序从标准输入读取字符,并把他们写到标准输出。除了大写字母转换成小写字母之外,其他的原样输出。
- 编写一个函数func(),将此函数的输入参数(int型)逆序输出显示,如54321 –> 12345,要求使用递归,并且函数体代码不超过8行
- 10、 java 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 要求不能出现截半的情况
- C语言 编写一个程序从标准输入读取字符,并把他们写到标准输出。除了大写字母转换成小写字母之外,其他的原样输出。
- 编写一个函数,要求输入年月日时分秒,输出该年月日时分秒的下一秒。如输入2004年12月31日23时59分59秒,则输出2005年1月1日0时0分0秒。
- 10、 java 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 要求不能出现截半的情况
- 编写函数,其功能是:将一个数字字符串转换为一个整数(不得调用C语言中提供的将字符串转换成整数的函数。)要求在主函数中输入该字符串并输出转换后的整数的值。
- 编写一个程序从标准输入读取字符,并把它们写到标准输出。除了大写字母转化成小写字母之外,其他的原样输出。
- 【C语言】编写一个程序从标准输入读取字符,并把他们写到标准输出。除了大写字母转换成小写字母之外,其他的原样输出。
- 定义一个结构体变量(包括年、月、日),编写程序,要求输入年月日,程序能够计算并输出改日是本年中的第几天。注意闰年问题。(数组)
- 编写一个程序从标准输入读取字符,并把他们写到标准输出,除了大写字母转换成小写字母之外,其他的原样输出。
- 简单编程(三)编写一个程序,要求用户输入两个整数,然后计算并输出他们的和、差、积、商。
- 编写一个函数,要求输入年月日时分秒, 输出该年月日时分秒的下一秒
- 编写一个函数,由实参传来一个字符串,统计此字符串中字母,数字,空格,和其他字符的个数,在主函数中输入字符串以及输出上述统计的结果。再考虑将算的的结果放在一个数组中
- 5-16: 输入10个数,要求编写一个排序函数,能够实现按绝对值从大到小排序。在主函数中输入10个数,输出排序后的10个数