用c语言编写 题目描述 编写一个函数,以正整数 y 作为年份,判断 y 是否为闰年,是则返回 1;否则返回 0。 函数接口定义: int isLeapYear ( int y ); 其中 y 都是用户传入的参数。 函数返回 1 表示 y 是闰年,返回 0 表示 y 不是闰年。 裁判测试程序样例: #include <stdio.h> int isLeapYear ( int y ); int main() { int year; scanf("%d", &year); if (year<=0) printf ("Data Error!"); else if ( isLeapYear(year)==1 ) printf("Yes"); else printf("No"); return 0; } 输入样例: 1900 输出样例: No
时间: 2024-01-26 09:02:08 浏览: 66
以下是用 C 语言编写的判断闰年的函数实现:
```c
#include <stdio.h>
int isLeapYear(int y) {
if ((y % 4 == 0 && y % 100 != 0) || y % 400 == 0) {
return 1;
} else {
return 0;
}
}
```
在这个函数中,我们首先判断 y 是否为 4 的倍数且不是 100 的倍数,或者是 400 的倍数,如果成立,则 y 是闰年,返回 1;否则返回 0。
可以使用以下代码进行测试:
```c
int main() {
int year;
scanf("%d", &year);
if (year <= 0) {
printf("Data Error!");
} else if (isLeapYear(year) == 1) {
printf("Yes");
} else {
printf("No");
}
return 0;
}
```
在测试程序中,我们首先读入年份 y,然后调用 isLeapYear 函数判断 y 是否为闰年,并输出 Yes 或 No。注意,如果 y 的值小于等于 0,则输出 Data Error!。
相关问题
用c语言 题目描述 编写一个函数,以正整数 y 作为年份,判断 y 是否为闰年,是则返回 1;否则返回 0。 函数接口定义: int isLeapYear ( int y ); 其中 y 都是用户传入的参数。 函数返回 1 表示 y 是闰年,返回 0 表示 y 不是闰年。 裁判测试程序样例: #include <stdio.h> int isLeapYear ( int y ); int main() { int year; scanf("%d", &year); if (year<=0) printf ("Data Error!"); else if ( isLeapYear(year)==1 ) printf("Yes"); else printf("No"); return 0; } 输入样例: 1900 输出样例: No
以下是用 C 语言编写的判断闰年的函数 isLeapYear:
```c
int isLeapYear(int y) {
if ((y % 4 == 0 && y % 100 != 0) || y % 400 == 0) {
return 1; // 是闰年
} else {
return 0; // 不是闰年
}
}
```
该函数接收一个参数 `y`,表示要判断的年份。如果 `y` 是闰年,则返回 1,否则返回 0。
在主函数中,可以使用该函数来判断输入的年份是否为闰年,并输出 Yes 或 No。完整代码如下:
```c
#include <stdio.h>
int isLeapYear(int y);
int main() {
int year;
scanf("%d", &year);
if (year <= 0) {
printf("Data Error!");
} else if (isLeapYear(year) == 1) {
printf("Yes");
} else {
printf("No");
}
return 0;
}
int isLeapYear(int y) {
if ((y % 4 == 0 && y % 100 != 0) || y % 400 == 0) {
return 1; // 是闰年
} else {
return 0; // 不是闰年
}
}
```
题目描述 给定一个年份,判断其是平年还是闰年。(提示:如果年份是400的倍数,或者是4的倍数但不是100的倍数,那么称这个年份为闰年) 输入描述 一个正整数nn(1900≤n≤99991900≤n≤9999)。 输出描述 如果是闰年,那么输出YES,否则输出NO 用c语言
以下是 C 语言代码实现:
```c
#include <stdio.h>
int main() {
int year;
scanf("%d", &year);
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {
printf("YES\n");
} else {
printf("NO\n");
}
return 0;
}
```
解释一下代码的逻辑:
1. 通过 `scanf` 函数读入一个整数 `year`,表示年份;
2. 根据题目描述,判断是否为闰年,如果是,则输出 `YES`,否则输出 `NO`;
3. 如果年份能被 400 整除,或者能被 4 整除但不能被 100 整除,则为闰年。
注意事项:
1. 如果年份是 1900 年,那么输出 `NO`,因为 1900 年能被 100 整除但不能被 400 整除;
2. 如果年份是 2000 年,那么输出 `YES`,因为 2000 年能被 400 整除。
阅读全文