-
题目描述:
-
输入一个ip地址串,判断是否合法。
-
输入:
-
输入的第一行包括一个整数n(1<=n<=500),代表下面会出现的IP地址的个数。
接下来的n行每行有一个IP地址,IP地址的形式为a.b.c.d,其中a、b、c、d都是整数。
-
输出:
-
可能有多组测试数据,对于每组数据,如果IP地址合法则输出"Yes!”,否则输出"No!”。
-
样例输入:
-
2 255.255.255.255 512.12.2.3
-
样例输出:
-
Yes! No!
-
提示:
-
合法的IP地址为:
a、b、c、d都是0-255的整数。
-
来源:
- 2006年华中科技大学计算机保研机试真题
-
-
#include<stdio.h> #define p(a) ((a>=0 &&a<=255)? 1:0) int main() { int n,a,b,c,d,i; while(scanf("%d",&n)!=EOF) { for(i=0;i<n;i++) { scanf("%d.%d.%d.%d",&a,&b,&c,&d); if(p(a)&&p(b)&&p(c)&&p(d)) printf("Yes!\n"); else printf("No!\n"); } } return 0; }