使用do-while,if--else等语句实现区间的判定和输出
题目如下:
输入两个年份 m 和 n (m<=n),输出 m 和 n 之间(包括 m 和 n )的所有年分
具体要求:
输入,输出要有提示信息,并且要判断输入数据合法性,如果输入年份 m 和 n 不在合法范围内,则输出“输入错误!请重新输入。”用户重新输入数据,直到输入了合法的数据为止
提示:
要确保用户从键盘输入的数据符合要求,可用 do -- while 语句实现。例如,要求输入一个正整数,如果输入错误,则需要重新输入。
参考代码如下:
do
{
printf("请输入一个正整数:");
scanf("% d",&n);
}while(n<=0);
代码如下:
#include<stdio.h> main() { int m, n; printf("请输入年份范围区间m,n(m<=n)\n"); scanf_s("%d%d", &m,&n); if (m <= n && m >= 0) { do { if ((m % 4 == 0 && m % 100 != 0) || m % 400 == 0) { printf("%d为闰年\n", m); m++; } else { m++; } } while (m <= n); } else { printf("输入有误,请重新输入!"); }//感谢使用B站:李同学比心心写下的代码(csdn:秃头橘子 博客园:lifser) }
运行结果如下:
输入合法数据时:
输入英文时:
书上说这个题难度:一颗星
有想看什么程序的 可以评论喔~~~
阿婆主的粉丝少 肯定会回的啦
我是李同学,希望此篇内容对你有帮助