写一个程序从键盘上输入年和月然后计算这个月的天数C语言
时间: 2023-05-25 12:06:58 浏览: 44
#include <stdio.h>
int main() {
int year, month;
printf("请输入年份: ");
scanf("%d", &year);
printf("请输入月份: ");
scanf("%d", &month);
switch(month) {
case 2: // 2月份判断闰年
if(year%4==0&&year%100!=0 || year%400==0) {
printf("%d年%d月有29天\n", year, month);
} else {
printf("%d年%d月有28天\n", year, month);
}
break;
case 4:
case 6:
case 9:
case 11: // 4,6,9,11月份有30天
printf("%d年%d月有30天\n", year, month);
break;
default: // 其余月份有31天
printf("%d年%d月有31天\n", year, month);
break;
}
return 0;
}
相关问题
写一个从键盘上调取年和月然后计算一个月有多少天的c语言程序
### 回答1:
```c
#include <stdio.h>
int main() {
int year, month, days;
printf("请输入年份:");
scanf("%d", &year);
printf("请输入月份:");
scanf("%d", &month);
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
days = 31;
break;
case 4:
case 6:
case 9:
case 11:
days = 30;
break;
case 2:
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
days = 29;
} else {
days = 28;
}
break;
default:
printf("输入有误!\n");
return 0;
}
printf("%d年%d月有%d天。\n", year, month, days);
return 0;
}
```
### 回答2:
下面是一个调取年和月份,并计算该月份有多少天的C语言程序:
```c
#include <stdio.h>
int main() {
int year, month, days;
printf("请输入年份:");
scanf("%d", &year);
printf("请输入月份:");
scanf("%d", &month);
// 判断是否是闰年
int isLeapYear;
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
isLeapYear = 1; // 是闰年
} else {
isLeapYear = 0; // 不是闰年
}
// 计算天数
switch (month) {
case 1: case 3: case 5: case 7: case 8: case 10: case 12:
days = 31;
break;
case 4: case 6: case 9: case 11:
days = 30;
break;
case 2:
days = isLeapYear ? 29 : 28;
break;
default:
printf("输入的月份无效!\n");
return 0;
}
printf("%d年%d月有%d天。\n", year, month, days);
return 0;
}
```
运行程序后,会依次要求输入年份和月份,然后根据输入的年份和月份计算该月份有多少天,并输出结果。程序会通过判断年份是否为闰年来确定二月的天数,其他月份根据常规的月份天数来计算。如果输入的月份无效(即不在1-12之间),则会给出提示信息。
### 回答3:
```c
#include <stdio.h>
int isLeapYear(int year) {
return (year % 4 == 0 && year % 100 != 0) || year % 400 == 0;
}
int numberOfDays(int year, int month) {
int days;
if (month == 2) {
days = isLeapYear(year) ? 29 : 28;
}
else if (month == 4 || month == 6 || month == 9 || month == 11) {
days = 30;
}
else {
days = 31;
}
return days;
}
int main() {
int year, month;
printf("请输入年份和月份:");
scanf("%d%d", &year, &month);
int days = numberOfDays(year, month);
printf("%d年%d月有%d天\n", year, month, days);
return 0;
}
```
运行程序后,程序会要求用户输入年份和月份,然后调用`numberOfDays`函数计算该年该月有多少天,并将结果打印出来。该程序根据闰年的定义,使用了`isLeapYear`函数来判断某一年是否是闰年。根据输入的月份,使用条件判断语句来确定该月有多少天。
编写程序,从键盘上输入年份和月份,计算并输出这一年的这一月共有多少天。C语言
下面是一个使用C语言编写的程序,用于根据输入的年份和月份计算并输出该年该月的天数:
```c
#include <stdio.h>
int main() {
int year, month, days;
printf("请输入年份:");
scanf("%d", &year);
printf("请输入月份:");
scanf("%d", &month);
// 判断闰年
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
// 闰年的情况
switch (month) {
case 2:
days = 29;
break;
case 4:
case 6:
case 9:
case 11:
days = 30;
break;
default:
days = 31;
break;
}
} else {
// 非闰年的情况
switch (month) {
case 2:
days = 28;
break;
case 4:
case 6:
case 9:
case 11:
days = 30;
break;
default:
days = 31;
break;
}
}
printf("%d年%d月共有%d天。\n", year, month, days);
return 0;
}
```
在程序中,首先通过`scanf`函数获取用户输入的年份和月份,分别存储在`year`和`month`变量中。然后使用条件判断来判断输入的年份是否为闰年,如果是闰年,则根据月份分别设置`days`变量的值为对应的天数;如果不是闰年,则根据月份同样设置`days`变量的值。最后使用`printf`函数输出结果。
需要注意的是,上述代码中没有对用户输入进行验证和错误处理,实际应用中需要考虑对输入进行合法性检查。