给出年、月、日,计算该日是该年的第几天。 要求使用指针编程。
时间: 2023-12-03 12:06:41 浏览: 44
以下是使用指针编写的C语言代码:
```c
#include <stdio.h>
int isLeapYear(int year); // 判断是否为闰年
int getDaysOfMonth(int year, int month); // 获取某月的天数
int main() {
int year, month, day;
printf("请输入年月日,格式为yyyy-mm-dd:");
scanf("%d-%d-%d", &year, &month, &day);
int days = 0; // 记录天数
int *pDays = &days; // 指向天数的指针
// 计算该年之前的天数
for (int i = 1; i < month; i++) {
*pDays += getDaysOfMonth(year, i);
}
// 加上该月的天数
*pDays += day;
printf("%d年%d月%d日是该年的第%d天\n", year, month, day, days);
return 0;
}
// 判断是否为闰年
int isLeapYear(int year) {
return (year % 4 == 0 && year % 100 != 0) || year % 400 == 0;
}
// 获取某月的天数
int getDaysOfMonth(int year, int month) {
int days;
switch(month) {
case 2:
days = isLeapYear(year) ? 29 : 28;
break;
case 4:
case 6:
case 9:
case 11:
days = 30;
break;
default:
days = 31;
break;
}
return days;
}
```
运行结果:
```
请输入年月日,格式为yyyy-mm-dd:2021-06-23
2021年6月23日是该年的第174天
```
相关推荐
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.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)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)