当前位置:首页 » 编程语言 » c语言年月日

c语言年月日

发布时间: 2022-01-22 20:33:57

c语言中输入年月日,判断这一天是一年的第几天……

以2月10日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于3时需考虑多加一天。

源代码:

#include "stdio.h"

#include "stdlib.h"

int main()
{
int day,month,year,sum,leap;

printf(" please input year,month,day ");

scanf("%d,%d,%d",&year,&month,&day);

switch(month) /*先计算某月以前月份的总天数*/
{
case 1:sum=0;break;

case 2:sum=31;break;

case 3:sum=59;break;

case 4:sum=90;break;

case 5:sum=120;break;

case 6:sum=151;break;

case 7:sum=181;break;

case 8:sum=212;break;

case 9:sum=243;break;

case 10:sum=273;break;

case 11:sum=304;break;

case 12:sum=334;break;
default:printf("data error ");break;
}
sum=sum+day; /*再加上某天的天数*/

if(year%400==0||(year%4==0&&year%100!=0)) /*判断是不是闰年*/
{
leap=1;
}
else
{
leap=0;
}

if(leap==1&&month>2) /*如果是闰年且月份大于2,总天数应该加一天*/
{
sum++;
}
printf("It is the %dth day. ",sum);
return 0;
}

输出

please input year,month,day

2019,02,10

It is the 41th day.

(1)c语言年月日扩展阅读

c语言编写程序根据输入的时间分别输出问候语

#include <stdio.h>
int main()
{
int a;
printf("请输入时间,例如:17");

scanf("%d",&a);

if(a<=12&&a>=0) printf("早");

else if(a>12&&a<=14) printf("午");

else printf("晚");

printf("%d",s);

return 0;

Ⅱ c语言年月日计算

首先,你的闰年判断就有问题。教你个口诀:“四年一润,一百年不润,四百年再润”。

其实就可以用if(yr%4==0||yr%100!=0&&yr%400==0){那么是闰年}

你的检验判断也可以利用mont数组的,首先判断是不是在闰年,然后判断输入days是不是大于的mont[mn](如果是闰年要判断二月+1)。

Ⅲ C语言输入年份和天数输出对应的年月日

C语言输入年份和天数输出对应的年月日的源代码如下:

#include<iostream>

intday(int&year,int&month);

intmain()

{

intyear{};

intmonth{};

std::cout<<"请输入年和月(空格隔开):";

std::cin>>year>>month;

std::cout<<"该月天数:"<<day(year,month)<<' ';

return0;

}

(3)c语言年月日扩展阅读

1、C++ 标准库没有提供所谓的日期类型。C++ 继承了 C 语言用于日期和时间操作的结构和函数。为了使用日期和时间相关的函数和结构,需要在 C++ 程序中引用 <ctime> 头文件。

2、有四个与时间相关的类型:clock_t、time_t、size_t和tm。类型 clock_t、size_t 和 time_t 能够把系统时间和日期表示为某种整数。

Ⅳ C语言年月日一年中第几天

首先,定义一个数组,数组里面有12个数据,对应每个月有多少天,
比如{31,28,31,30……}
然后当拿到输入的年月日的时候,判断当前年份是否为润年,
如果是闰年的话,改变一下2月的天数
然后在判断月份
比如是5月份
那就for循环那个数组4次
数组里面的数据相加
然后在加上日期就好了
额,因为我是oc的,C语音基础不是很好,
不过大概就是这个思路……

Ⅳ C语言 年月日

定义个结构数组,分别保存年月日
两个变量,一个保存生日一个保存当前日期
然后两个变量相减

Ⅵ c语言编程:输入年月日,求出该天是该年的第几天

#include<stdio.h>

intmain()

{intday,month,year,sum,leap;

printf(" 请输入年、月、日,格式为:年,月,日(2015,12,10) ");

scanf("%d%d%d",&year,&month,&day);//格式为:20190510

switch(month)//先计算某月以前月份的总天数

{case1:sum=0;break;

case2:sum=31;break;

case3:sum=59;break;

case4:sum=90;break;

case5:sum=120;break;

case6:sum=151;break;

case7:sum=181;break;

case8:sum=212;break;

case9:sum=243;break;

case10:sum=273;break;

case11:sum=304;break;

case12:sum=334;break;

default:printf("dataerror");break;}

sum=sum+day;//再加上某天的天数

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

{//判断是不是闰年

leap=1;

}

else

{leap=0;

}

if(leap==1&&month>2)

{//*如果是闰年且月份大于2,总天数应该加一天

sum++;

}

printf("这是这一年的第%d天。",sum);

printf(" ");

}

(6)c语言年月日扩展阅读

使用c语言编程结构tm格式化时间注意事项:

tm结构在C/C++中处理日期和时间相关的操作时,显得尤为重要。tm结构以C结构的形式保存日期和时间,大多数与时间相关的函数都使用了tm结构。

使用了tm结构和各种与日期和时间相关的函数。在练习使用结构之前,需要对C结构有基本的了解,并懂得如何使用箭头->运算符来访问结构成员。

Ⅶ c语言中如何输入年月日

就这么写的,没调试,你自己调一下好吧

#include <stdio.h>
void main()
{
int year,month,date;
scanf("%d-%d-%d",&year,&month,&date);
printf("%d-%d-%d",year,month,date);

if(year<0||year>3000)
printf("Error!");
if(month>12||month<1)
printf("Error!");
switch(month)
{
case 1: if(date>31||date<1) printf("Error!");break;
case 2: if((year%4==0)&&(year%100!=0)||(year%400==0))
{
if(date>29||date<1) printf("Error!");
}
else
if(date>28||date<1) printf("Error!");
break;
case 3: if(date>31||date<1) printf("Error!");break;
case 4: if(date>30||date<1) printf("Error!");break;
case 5: if(date>31||date<1) printf("Error!");break;
case 6: if(date>30||date<1) printf("Error!");break;
case 7: if(date>31||date<1) printf("Error!");break;
case 8: if(date>31||date<1) printf("Error!");break;
case 9: if(date>30||date<1) printf("Error!");break;
case 10: if(date>31||date<1) printf("Error!");break;
case 11: if(date>30||date<1) printf("Error!");break;
case 12: if(date>31||date<1) printf("Error!");break;
}
}

Ⅷ C语言 日期(年月日 ) 排序

#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
/*
一月 Jan. January
二月 Feb. February
三月 Mar. March
四月 Apr. April
五月 May. May
六月 June. June
七月 July. July
八月 Aug. Aguest
九月 Sept. September
十月 Oct. October
十一月 Nov. November
十二月 Dec. December
缩写:正规的英语中六月、七月不缩写,九月的缩写是4个字母,其他月份3个字母。
*/
char strm[12][10]={"Jan","Feb","Mar","Apr","May","June","July","Aug","Sept","Oct","Nov","Dec"};
struct Date
{
int y,d;
char m[10];
int value;
}d[10000];
int findm(char m[])
{
int i;
for(i=0;i<12;i++)
if(strcmp(m,strm[i])==0)return i;
return -1;
}
bool cmp(Date a,Date b)
{
return a.value<b.value;
}
int main()
{
int n=3,i,j;
/*
3
00 Jan 11
99 Feb 22
08 Mar 02
*/
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d%s%d",&d[i].y,d[i].m,&d[i].d);
j=findm(d[i].m);
d[i].value=d[i].y*10000+j*100+d[i].d;
}
sort(d,d+n,cmp);
for(i=0;i<n;i++)
{
printf("%02d %s %02d\n",d[i].y,d[i].m,d[i].d);
}
return 0;
}

Ⅸ C语言中如何把月日年输出为年月日

这要看原来的程序中,月日年是怎么组织的?如果分别存放在三个变量中,那么只要把这三个变量的输出顺序交换一下就可以了。
例如,
int y,m,dm,d;
printf("请输入月 日 年:");
scanf("%d%d%d",&m,&d,&y);
printf("%d年%d月%d日",y,m,d);

Ⅹ C语言编写 输入 年 月 日 ,输出这个日期的下一天的日期

利用C标准函数time,localtime,mktime来实现
先将输入的年月日放到tm结构中
用mktime()函数生成一个整数
用这个整数+86400(24*60*60)
然后再转换成日期就OK了

热点内容
传奇这个配置怎么样 发布:2024-11-14 11:48:25 浏览:376
配置横向防火墙是什么意思 发布:2024-11-14 11:42:34 浏览:731
手机缓存文件能打开吗 发布:2024-11-14 11:41:00 浏览:492
存储系统集成 发布:2024-11-14 11:14:54 浏览:584
云服务器搭建方法图解 发布:2024-11-14 11:14:53 浏览:309
挑战服务器吃鸡是什么 发布:2024-11-14 10:59:07 浏览:932
自缴社保算法 发布:2024-11-14 10:43:53 浏览:554
长安科尚哪个配置有电动滑门 发布:2024-11-14 10:37:10 浏览:198
随机策略算法 发布:2024-11-14 10:37:10 浏览:796
办公室电脑可以改无盘服务器吗 发布:2024-11-14 10:32:28 浏览:864