savitar


私信TA

用户名:dotcpp0621044

访问量:248

签 名:

等  级
排  名 26791
经  验 520
参赛次数 0
文章发表 3
年  龄 0
在职情况 学生
学  校 湖南交通工程学院
专  业

  自我简介:

TA的其他文章

解题思路:1.输入地址

2.scanf函数返回正确数据个数
3.吃掉输入错误的数据,跟多出来的字符

4.如果没有错误字符,但是输入的正确数据不满四个就输出N

5.如果没有以上情况,当满足条件时输出Y,条件不满则N
注意事项:

参考代码:

#include<stdio.h>
main()
{
	int k,a,b,c,d;
	char s[100];
	while(~(k=scanf("%d.%d.%d.%d",&a,&b,&c,&d)))//遇到错误时返回0取反为-1, 输入几个正确数据就返回几
	{
		gets(s);//吃掉输入错误的字符跟多出来的字符
		if(s[0]!='\0')//如果有错误字符跟多余字符就输出N
		{
		    printf("N\n");
		    continue;
		}
		else if(k<4)//如果没有错误字符,但是输入的正确数据不满四个就输出N
		{
			printf("N\n");
			continue; 
		}
		else if(a>=0&&a<=255&&b>=0&&b<=255&&c>=0&&c<=255&&d>=0&&d<=255)//如果没有以上情况,当满足条件时输出Y,条件不满则N
		printf("Y\n");
		else
		printf("N\n");
	}
}


 

0.0分

1 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区

秀啊,收藏了
2023-12-01 14:59:16
  • «
  • 1
  • »