输入年份及月份,输出这一年的这个月的天数。\n\n提示:根据输入的月份数判断,当月份为1、3、5、7、8、10、12时,天数为31,当月份为4、6、9、11时,天数为30,当月份为2时,平年的天数为28,
时间: 2023-05-02 22:01:16 浏览: 560
题目要求输入年份和月份,输出这一年的这个月的天数。
提示:根据输入的月份数判断,当月份为1、3、5、7、8、10、12时,天数为31,当月份为4、6、9、11时,天数为30,当月份为2时,根据闰年与否判断天数,闰年2月为29天,非闰年2月为28天,平年的天数为365天。
相关问题
天数判断。 题目描述 题目内容:编写程序,从键盘上输入年份和月份,计算并输出这一年的这一月共有多少天。 提示:可将12个月份的天数置于一维数组,通过查表的方法获得结果。 输入样例: 2019 3输出样例: 31 输入样例: 2019 9输出样例: 30 输入样例: 2019 2输出样例: 28 输入样例: 2004 2输出样例: 29
好的,以下是您所需要的 C 代码:
```c
#include <stdio.h>
int main() {
int days_in_month[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; //每个月的天数,注意二月份的天数为28或29,这里默认为28
int year, month;
printf("请输入年份和月份,用空格隔开:");
scanf("%d %d", &year, &month);
if (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0)) { //判断是否为闰年
days_in_month[1] = 29; //是闰年,将二月份的天数改为29天
} else {
days_in_month[1] = 28; //不是闰年,将二月份的天数改为28天
}
printf("%d\n", days_in_month[month-1]); //输出结果
return 0;
}
```
与之前的代码基本相同,不过这次用户需要输入年份和月份。输入样例中用空格隔开,我们可以通过 `scanf` 函数来读取这两个数。然后,根据输入的年份和月份,判断这一年是否为闰年。如果是,将二月份的天数改为29天,如果不是,则将二月份的天数改为28天。最后,根据输入的月份,输出该月的天数。
注意,这里假定输入的年份和月份都是合法的,没有进行输入验证。同时,输出结果并不需要与样例完全一致,只需要输出该月的天数即可。
c语言代码:输入年份和这一年的第几天,输出具体的年、月、日的信息。(注意闰年的判断)
好的,我明白了。下面是一个简单的C语言代码实现:
```c
#include <stdio.h>
int main() {
int year, day;
printf("请输入年份和这一年的第几天:\n");
scanf("%d %d", &year, &day);
// 判断闰年
int leap = 0;
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
leap = 1;
}
// 计算月份和日期
int month, date;
int month_days[2][12] = {{31,28,31,30,31,30,31,31,30,31,30,31},
{31,29,31,30,31,30,31,31,30,31,30,31}};
int flag = (leap ? 1 : 0); // 根据闰年标志来选择天数数组
int i;
for (i = 0; i < 12; i++) {
if (day <= month_days[flag][i]) {
month = i + 1;
date = day;
break;
}
day -= month_days[flag][i];
}
// 输出结果
printf("%d年%d日是%d月%d日\n", year, date, month);
return 0;
}
```
这个程序首先提示用户输入年份和这一年的第几天,然后根据闰年条件判断是否为闰年,接着根据每个月的天数计算出具体的月份和日期,最后输出结果。请注意,此处的年份是指公历年份,第几天是从1开始计数的。