解题思路:
1.将输入以字符串方式读取
2.通过ASCII判断除了"."的每一个字符是否在0-9之间。
注意事项:
进行数字运算时要将字符型强制转换为整型。
参考代码:
#include <stdio.h>
#include <string.h>
#include <ctype.h>
int ip(char *pt);
int main()
{
char ar[31];
while(scanf("%s",ar)!=EOF)
{
if(ip(ar)==1)
printf("Y\n");
else
printf("N\n");
}
return 0;
}
int ip(char *pt)
{
int flag=5; //标志位,当flag==0时说明完全符合条件
int ar=0;
int num;
num=strlen(pt); //获取字符串长度
while(*pt<='9'&&*pt>='0'||*pt=='.')
{
if(*pt<='9'&&*pt>='0')
{
ar*=10;
ar+=(int)(*pt-48); //0的ascii码为48
num--;
}
if(*pt=='.')
{
num--;
if(ar>=0&&ar<=255)
{
flag--;
ar=0;
}
}
if(num==0)
{
if(ar>=0&&ar<=255)
{
flag--;
ar=0;
break;
}
}
pt++;
}
return flag;
}
0.0分
0 人评分
C语言考试练习题_排列 (C++代码)浏览:629 |
C语言程序设计教程(第三版)课后习题11.3 (C语言代码)浏览:1053 |
【蟠桃记】 (C语言代码)浏览:648 |
求组合数 (C语言代码)浏览:1153 |
C语言训练-计算t=1+1/2+1/3+...+1/n (C语言代码)浏览:904 |
本人酷爱递归实现很多问题,这里也是浏览:549 |
简单的a+b (C语言代码)浏览:573 |
Hello, world! (C++代码)浏览:1744 |
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:668 |
蛇行矩阵 (C语言代码)浏览:498 |