用c语言写出以下程序输入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)给出日期。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。闰年的2月有29天。 输出格式: 在一行输出日期是该年中的第几天。
时间: 2024-05-05 19:17:20 浏览: 14
```c
#include <stdio.h>
int main()
{
int year, month, day, days = 0;
scanf("%d/%d/%d", &year, &month, &day);
int monthDays[12] = {31,28,31,30,31,30,31,31,30,31,30,31};
if((year%4 == 0 && year%100 != 0) || year%400 == 0) //判断是否为闰年
monthDays[1] = 29; //闰年2月有29天
for(int i=0; i<month-1; i++)
days += monthDays[i];
days += day;
printf("%d\n", days);
return 0;
}
```
相关问题
c语言计算天数按照yyyy/mm/dd格式输入年月日计算其是该年第几天
好的,这是一个比较简单的问题。下面是一个 C 语言程序,可以根据用户输入的年月日(格式:yyyy/mm/dd)计算该日期是该年的第几天:
```
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char date[11];
int year, month, day, sum = 0, i;
int days[12] = {31,28,31,30,31,30,31,31,30,31,30,31};
printf("请输入年月日(格式:yyyy/mm/dd):");
scanf("%s", date);
// 使用字符串分割函数 strtok() 将年月日分割出来
char *p = strtok(date, "/");
year = atoi(p);
p = strtok(NULL, "/");
month = atoi(p);
p = strtok(NULL, "/");
day = atoi(p);
// 判断是否为闰年
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
{
days[1] = 29;
}
// 计算天数
for (i = 0; i < month - 1; i++)
{
sum += days[i];
}
sum += day;
printf("该日期是该年的第 %d 天\n", sum);
return 0;
}
```
程序中使用了一个字符串 `date` 来存储用户输入的日期,然后使用字符串分割函数 `strtok()` 将年月日分割出来。接下来的计算方法与之前的程序相同。需要注意的是,由于使用了字符串分割函数,程序需要包含头文件 `stdlib.h` 和 `string.h`。
输入格式: 输入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)给出日期。注意:闰年的判别条件 是该年年份能被4整除但不能被100整除、或者能被400整除。闰年的2月有29天。 输出格式:c语言
以下是一个判断闰年并输出该年该月天数的 C 语言程序:
```c
#include <stdio.h>
int main()
{
int year, month, days;
printf("请输入日期(yyyy/mm/dd):");
scanf("%d/%d/%d", &year, &month, &days);
// 判断是否为闰年
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;
}
```
输入格式为“yyyy/mm/dd”,通过 scanf 函数按照该格式读入年、月、日的值。然后判断该年是否为闰年,如果是闰年则根据不同的月份输出该月的天数;如果不是闰年,则同样根据不同月份输出天数。最后通过 printf 函数输出结果。