用C语言,在main()主函数中实现由键盘输入2022年中某一天的月份及日期,调用computDay(int month,int day)函数,传入输入的月份及日期,打印输出这天是2022年中的第几天
时间: 2024-03-11 17:48:26 浏览: 18
以下是实现的C语言代码:
```c
#include <stdio.h>
int computDay(int month, int day);
int main() {
int month, day, dayOfYear;
printf("请输入月份和日期(以空格分隔):");
scanf("%d %d", &month, &day);
dayOfYear = computDay(month, day);
printf("2022年%d月%d日是2022年中的第%d天\n", month, day, dayOfYear);
return 0;
}
int computDay(int month, int day) {
int days[] = {0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334};
int dayOfYear = days[month-1] + day;
return dayOfYear;
}
```
上述代码中,`main()`函数中通过`scanf()`函数从键盘输入一个月份和日期,然后调用`computDay()`函数计算这一天是2022年中的第几天,并将结果打印输出。`computDay()`函数中使用一个数组`days`来存储每个月份前面的天数,然后计算出输入的月份和日期对应的天数。注意,这里的`days`数组中的数值都是2022年的天数,因为我们要计算的是2022年中的第几天。
相关问题
c语言编写一个函数用于判断某年是否为闰年在主函数中调用此函数,判断用户输出的月份的天数
以下是C语言编写一个函数用于判断某年是否为闰年并在主函数中调用此函数,判断用户输出的月份的天数的代码:
```c
#include <stdio.h>
// 判断是否为闰年
int isLeapYear(int year) {
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
return 1;
} else {
return 0;
}
}
// 获取某年某月的天数
int getDays(int year, int month) {
int days;
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 (isLeapYear(year)) {
days = 29; } else {
days = 28;
}
break;
default:
days = -1;
break;
}
return days;
}
int main() {
int year, month;
printf("请输入年份和月份(如2022 2):");
scanf("%d %d", &year, &month);
int days = getDays(year, month);
if (days == -1) {
printf("输入的月份有误!\n");
} else {
printf("%d年%d月有%d天。\n", year, month, days);
}
return 0;
}
```
在Ubuntu中建立一个C语言程序输入一个年份月份,判断该年该月由多少天;(要求封装+传参调用);
可以使用以下代码实现:
```c
#include <stdio.h>
int isLeapYear(int year) {
return year % 400 == 0 || (year % 4 == 0 && year % 100 != 0);
}
int getDaysOfMonth(int year, int month) {
switch (month) {
case 2:
return isLeapYear(year) ? 29 : 28;
case 4:
case 6:
case 9:
case 11:
return 30;
default:
return 31;
}
}
int main() {
int year, month;
printf("请输入年份和月份,格式为yyyy mm:");
scanf("%d%d", &year, &month);
int days = getDaysOfMonth(year, month);
printf("%d年%d月共有%d天\n", year, month, days);
return 0;
}
```
其中,`isLeapYear`函数用于判断闰年,`getDaysOfMonth`函数用于计算某年某月的天数,`main`函数中通过调用这两个函数来实现输入年份月份并输出该月的天数。
相关推荐
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)