当前位置:首页 » 编程语言 » c语言输入日期计算天数

c语言输入日期计算天数

发布时间: 2025-01-20 18:11:57

1. c语言;输入一个年份,输出该年各月份天数以及总天数。

#include <stdio.h>
main()
{
int i,year,month[12] ={31,28,31,30,31,30,31,31,30,31,30,31};
scanf("%d",&year);
if((year%4==0)&&(year%100!=0)||(year%400==0))month[1]++;year=0;
for (i=0;i<12;i++)
printf("month[%d]:day[%d] ",i+1,month[i]),year+=month[i];
printf("year:[%d]days ",year);
}

2. c语言:用自定义函数来实现任意输入一个日期,结果输出其星期几

c语言中,通过编写自定义函数,可以轻松地计算任意输入日期对应的星期几。这需要考虑闰年以及每个月的天数。计算方法是累加前几个月的天数加上当前月的天数。具体实现时,需要定义一个函数来判断是否为闰年,并根据年份和月份输入来计算天数。

首先,定义一个数组来存储每个月的天数。同时,定义一个变量来记录是否为闰年。接着,使用for循环累加前几个月的天数,根据输入的月份调整累加的范围。最后,将当前月的天数加到累计天数上,得到最终的天数。为了简化计算,可以使用自定义函数来判断是否为闰年,从而正确计算2月份的天数。

下面是一个简单的实现示例:

int mon[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};

int leap_year(int year) {

if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {

return 1;

}

return 0;

}

int main() {

int mon[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};

int y, m, d, days, leap;

scanf("%d%d%d", &y, &m, &d);

leap = leap_year(y);

for (int i = 1, days = 0; i < m; i++) {

if (i == 2 && leap) {

days += 29;

} else {

days += mon[i];

}

}

days += d;

printf("days=%d\n", days);

return 0;

}

通过上述代码,可以准确地计算出输入日期对应的天数。进一步地,可以结合星期几的计算公式,实现计算星期几的功能。这不仅有助于加深对c语言的理解,还能提高编程技巧。

3. C语言中输入一个日期计算他是今年的第几天

输入年月日三个值,先累加该年之前各个月的每月天数,最后累加日期天数即可获取结果。

一、算法设计:

1、输入年月日三个值;

2、为保证程序健壮性,可以对三个值的合法性进行判断,只对合法数据进行操作;

3、累加之前各月天数;

4、累加当前日值;

5、输出结果。

二、注意点:

可以使用数组存储各个月份的天数,用循环累加。需要注意的是闰年的判断。对于闰年,2月要多加一天。

三、参考代码:

#include<stdio.h>
intmain()
{
intmdays[12]={31,28,31,30,31,30,31,31,30,31,30,31};//十二个月的天数。
inty,m,d,r=0,i;
scanf("%d%d%d",&y,&m,&d);
if(y%400==0||(y%4==0&&y%100!=0))//闰年。
mdays[1]=29;//设置闰年二月值。
if(y<0||m<=0||m>12||d<=0||d>mdays[m-1])//输入非法。
{
printf("输入年月日不合法 ");//提示并退出。
return-1;
}
for(i=0;i<m-1;i++)//累加之前各个月。
r+=mdays[i];
r+=d;//累加日期值。
printf("%d ",r);//输出结果。
return0;
}
热点内容
下载了怎么解压 发布:2025-01-20 20:55:22 浏览:179
c语言第八章答案 发布:2025-01-20 20:55:17 浏览:696
安卓主题壁纸怎么换回来 发布:2025-01-20 20:54:03 浏览:626
免费云存储排行榜 发布:2025-01-20 20:48:39 浏览:231
访问农信 发布:2025-01-20 20:47:06 浏览:2
用什么循环编译时间短 发布:2025-01-20 20:46:55 浏览:687
医院his源码 发布:2025-01-20 20:43:06 浏览:983
数据库结构原理 发布:2025-01-20 20:35:39 浏览:9
mysql主从搭建服务器配置 发布:2025-01-20 20:33:06 浏览:11
安卓微信缓存设置在sd卡 发布:2025-01-20 20:26:01 浏览:750