#include <stdio.h> #include <string.h> #include <stdlib.h> int judge(char a[]) { int i,j=0,m; char b[30]; for(i=0;i<strlen(a);i++) //挨个遍历 { if(i==0)//第一个字符不可以为0 { if(a[i]=='0') return 0; } b[j]=a[i]; j++; if((a[i]<'0'||a[i]>'9')&&a[i]!='.')//只允许出现数字和. return 0; if(a[i]=='.')//出现点的后一个不能为0 { m=atoi(b); if(m>255) return 0; if(a[i+1]=='0') return 0; strcpy(b," "); j=0; } } m=atoi(b); if(m>255) return 0; return 1; } int main() { char a[30]; int flag; while(scanf("%s",&a)!=EOF) { flag=judge(a); if(flag==0) printf("N\n"); else printf("Y\n"); } return 0; }
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:689 |
A+B for Input-Output Practice (C++代码)浏览:609 |
人见人爱A+B (C语言代码)浏览:628 |
ASCII帮了大忙浏览:749 |
A+B for Input-Output Practice (IV) (C语言代码)浏览:456 |
C语言程序设计教程(第三版)课后习题6.5 (C语言代码)浏览:759 |
2003年秋浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:605 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:863 |
1908题解浏览:640 |
蚂蚁感冒 (C语言代码)浏览:1334 |