zoukankan      html  css  js  c++  java
  • IP判断

     IP判断

    题目描述

    在基于Internet的程序中,我们常常需要判断一个IP字符串的合法性。 
    合法的IP是这样的形式: 
    A.B.C.D 
    其中A、B、C、D均为位于[0, 255]中的整数。为了简单起见,我们规定这四个整数中不允许有前导零存在,如001这种情况。 
    现在,请你来完成这个判断程序吧^_^ 

    输入

    输入由多行组成,每行是一个字符串,输入由“End of file”结束。 
    字符串长度最大为30,且不含空格和不可见字符 

    输出

    对于每一个输入,单独输出一行 
    如果该字符串是合法的IP,输出Y,否则,输出N 

    样例输入

    1.2.3.4
    a.b.c.d
    267.43.64.12
    12.34.56.bb
    210.43.64.129
    -123.4.5.6

    样例输出

    Y
    N
    N
    N
    Y
    N


    AC代码:
     1 #include <string>
     2 #include <cstdio>
     3 #include <cstring>
     4 #include <iostream>
     5 #include <algorithm>
     6 using namespace std;
     7  
     8 int main()
     9 {
    10     string ip;
    11     while (cin>>ip)
    12     {
    13         if (ip=="End")
    14             break;
    15         int sum=0;bool flag=1;
    16         int len=ip.size();
    17         for (int i=0;i<len;i++)
    18         {
    19             if (ip[0]=='-')
    20             {
    21                 flag=false;
    22                 break;
    23             }
    24             else
    25             {
    26                 if (ip[i]=='.')
    27                 {
    28                     if (sum<0 || sum>255)
    29                     {
    30                         flag=false;
    31                         break;
    32                     }
    33                     sum=0;
    34                 }
    35                 else if (ip[i]-'0'<0 || ip[i]-'0'>9)
    36                 {
    37                     flag=false;
    38                     break; 
    39                 }
    40                 else
    41                     sum+=sum*10+(ip[i]-'0');
    42             }
    43             if (!flag)
    44                 break;
    45         }
    46         if (flag)
    47             printf("Y
    ");
    48         else
    49             printf("N
    ");
    50     }
    51     return 0;
    52 }
    IP
     
  • 相关阅读:
    排序算法---堆排序

    排序算法---希尔排序
    简单排序算法
    Jave 垃圾回收查看工具--jstat
    Linux 查看进程IO状态
    vittualenv 和mkvirtualenv
    服务器被当作了肉机去挖矿的解决办法
    pycharm的函数注释 和 父子组件传递
    git初始化操作
  • 原文地址:https://www.cnblogs.com/LHR-HY/p/11061189.html
Copyright © 2011-2022 走看看