c语言闰年是能被4整除但不能被100整除或者能被400整除的年份。请判断给定年份是否闰年。 输入格式: 首先输入一个正整数T,表示测试数据的组数,然后是T组测试数据。每组测试数据输入一个年份y。 输出格式: 对于每组测试,若y是闰年输出“YES”,否则输出“NO”。引号不必输出。
时间: 2023-06-10 10:06:09 浏览: 651
以下是C语言代码实现:
```c
#include <stdio.h>
int main() {
int t;
scanf("%d", &t); //输入测试数据组数
while (t--) { //循环处理每组测试数据
int year;
scanf("%d", &year); //输入年份
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) { //判断是否为闰年
printf("YES\n"); //输出“YES”
} else {
printf("NO\n"); //输出“NO”
}
}
return 0;
}
```
输入样例:
```
3
2000
2004
2100
```
输出样例:
```
YES
YES
NO
```
相关问题
C语言求2000-2050年中的闰年,符合下面两个条件之一的年份是闰年: 能被4整除但不能被100整除 能被100整除且能被400整除
在C语言中,我们可以编写一个函数来判断一个年份是否为闰年。根据给定的条件,你可以创建一个`is_leap_year()`函数,示例如下:
```c
#include <stdio.h>
// 定义判断闰年的函数
int is_leap_year(int year) {
if (year % 4 == 0) {
if (year % 100 != 0 || (year % 400 == 0)) { // 如果不是100的倍数,或者既是100的倍数又是400的倍数,则是闰年
return 1; // 返回1表示是闰年
}
}
else {
return 0; // 否则不是闰年,返回0
}
}
int main() {
for (int i = 2000; i <= 2050; i++) {
int result = is_leap_year(i);
if (result == 1) {
printf("%d年是闰年。\n", i);
} else {
printf("%d年不是闰年。\n", i);
}
}
return 0;
}
```
这个程序会打印出2000年至2050年间的所有闰年和非闰年。
使用c语言编写一个程序,用于确定21世纪(从2001年开始)直至给定年份的所有闰年。判断闰年的规则为:如果年份能被4整除但不能被100整除,或者能被400整除,则该年为闰年。如果没有符合条件的闰年,请输出’no’。请展示相应的代码实现。
在C语言中,我们可以创建一个函数来检查某个年份是否是闰年,并遍历整个21世纪(从2001到给定年份),打印出所有闰年。以下是一个简单的示例代码:
```c
#include <stdio.h>
// 判断是否是闰年的辅助函数
int is_leap_year(int year) {
if (year % 4 == 0) {
if (year % 100 != 0 || year % 400 == 0)
return 1; // 是闰年
}
return 0; // 否则不是闰年
}
int main() {
int start_year = 2001;
int end_year = 2050; // 示例,假设我们要检测到2050年
printf("Leap years between %d and %d are:\n", start_year, end_year);
for (int year = start_year; year <= end_year; year++) {
if (is_leap_year(year))
printf("%d ", year);
}
// 检查是否有符合条件的闰年
if (!is_leap_year(start_year) && !is_leap_year(end_year)) {
printf("\nNo leap years found in the range.\n");
}
return 0;
}
```
在这个程序中,我们首先定义了一个`is_leap_year`函数,它接受一个年份作为参数并返回1(表示闰年)或0(表示平年)。然后,在主函数`main`中,我们遍历指定范围内的每个年份,如果该年份是闰年就打印出来。最后,如果在整个范围内都没有找到闰年,我们会额外输出一条信息。
阅读全文