「学点C语言系列」02 判断年份是否为闰年
写在前面:「学点C语言系列」是新开的专栏,博主电子信息工程专业毕业后,从事了4年硬件工程师,最近一次接触C语言还是4年前的毕设,想重新系统的学习一下C语言,从最基本的上一篇:Hello World
开始。
「学点C语言系列」01 求阿姆斯特朗数
文章目录
- 1. 问题描述
- 2. 解题思路
- 3. 代码实现
- 4. 延伸一下
1. 问题描述 判断一个年份是否是闰年?输入年份,输出判断结果:是或者否。
2. 解题思路 润年有两种,一种是普通润年,另一种是世纪闰年。
- 普通闰年:年份能被4整除但不能被100整除,如2008为普通闰年。
- 世纪闰年:能被400整除的为世纪闰年,如2000为世纪闰年。
if
语句中,成立则返回YES
;else
返回NO
if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0)
3. 代码实现
#define _CRT_SECURE_NO_WARNINGS 10
/*
文件名:rnpd.c
作者:记得诚
问题:闰年判断
*/
#include
int main()
{
int y;
printf("请输人年份:");
scanf("%d", &y);
//键盘输入赋值到y
if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0)//y被4整除且不能被100整除或者y被400整除
printf("YES");
else
printf("NO");
printf("\n");
//换行
return 0;
}
编译,键盘输入2012,返回
YES
,是闰年;请输人年份:2012
YES
请按任意键继续. . .
编译,键盘输入2013,返回
NO
,不是闰年;请输人年份:2013
NO
请按任意键继续. . .
4. 延伸一下 打印出1900~2000之间的全部闰年数?
#define _CRT_SECURE_NO_WARNINGS 10
/*
文件名:rndy.c
作者:记得诚
问题:闰年打印
*/
#include
int main()
{
int y;
y = 1900;
while (y <= 2000)
{
if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0)
{
printf("%d(yes) ",y);
y++;
}
else
y++;
}
printf("\n");
//换行
return 0;
}
编译,打印出1900~2000之间闰年的年份如下:
1904(yes) 1908(yes) 1912(yes) 1916(yes) 1920(yes) 1924(yes) 1928(yes) 1932(yes) 1936(yes)
1940(yes) 1944(yes) 1948(yes) 1952(yes) 1956(yes) 1960(yes) 1964(yes) 1968(yes) 1972(yes)
1976(yes) 1980(yes) 1984(yes) 1988(yes) 1992(yes) 1996(yes) 2000(yes)
请按任意键继续. . .
【「学点C语言系列」02 判断年份是否为闰年】永远相信美好的事情即将发生!作者记得诚,写于安徽合肥,时间2020-04-04 PM17:12
推荐阅读
- 【生信技能树】R语言练习题|【生信技能树】R语言练习题 - 中级
- 八、「料理风云」
- 一起来学习C语言的字符串转换函数
- C语言字符函数中的isalnum()和iscntrl()你都知道吗
- C语言浮点函数中的modf和fmod详解
- C语言中的时间函数clock()和time()你都了解吗
- 「#1-颜龙武」区块链的价值是什么()
- 《深度倾听》第5天──「RIA学习力」便签输出第16期
- 「按键精灵安卓版」关于全分辨率脚本的一些理解(非游戏app)
- C语言学习|第十一届蓝桥杯省赛 大学B组 C/C++ 第一场