题目描述
输入一个ip地址串,判断是否合法。
输入描述
每行有一个IP地址,IP地址的形式为a.b.c.d,其中a、b、c、d都是整数。
输出描述
可能有多组测试数据,对于每组数据,如果IP地址合法则输出"Yes!”,否则输出"No!”。合法的IP地址为:a、b、c、d都是0-255的整数。
输入
255.255.255.255
512.12.2.3
输出
Yes!
No!
代码
#include<iostream>
#include<string>
using namespace std;
int main(){
string s,temp;
int i,cnt=0,len,pos,sum=0;
while(cin>>s){
s+=".";
sum=0;
len=s.size();
for(i=0;i<len;i++){
if(s[i]!='.')
cnt=cnt*10+(s[i]-'0');
else{
if(cnt>=0&&cnt<=255)
sum++;
cnt=0;
}
}
if(sum==4)
cout<<"Yes!"<<endl;
else
cout<<"No!"<<endl;
}
return 0;
}