导航:首页 > 编程语言 > 日期月份合并编程语言

日期月份合并编程语言

发布时间:2022-04-26 01:40:58

‘壹’ 求C语言程序,我输入日期(年月日),然后输入前后加减多少天,得出那个日期是多少

#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
main()
{
int year,month,day;
int leapyear=0;//闰年时使用
int daytime=0;
int sum;
static int month_date[12]={31,28,31,30,31,30,31,31,30,31,30,31};
printf("请输入日期:(例如:2010 5 27)");
scanf("%d%d%d",&year,&month,&day);
if(year<=0||month>12||month<1)//判断输入是否正确
{
printf("Error!\n");
getch();
exit(0);
}
if(year%400==0||(year%4==0&&year%100!=0))//判断是否为闰年
leapyear=1;//是就加1
if(month==2)//判断日是否输入正确,2月是特殊的因为分闰年和平年
{ if((month_date[month-1]+leapyear)<day||day<=0)
{
printf("Error!\n");
getch();
exit(0);
}
}
if(month!=2)//当输入不是2月时,判断输入
{
if(month_date[month-1]<day||day<=0)
{
printf("Error!\n");
getch();
exit(0);
}
}
printf("\n请输入天数:");
scanf("%d",&daytime);//输入第N天后
if(daytime<0)
{
printf("Error!\n");
getch();
exit(0);
}
sum=daytime+day;//当前日期与N天相加
do
{
if(month==2)//判断当月是不是二月份
month_date[month-1]+=leapyear;
if(sum>month_date[month-1])
{
sum-=month_date[month-1];
month++;//超过当月天数,加一个月
if(month==13)//当月份超过12月时,重新返到1月
{
year++;//加一年
if(year%400==0||(year%4==0&&year%100!=0))//判断加一年后是不是闰年
leapyear=1;
else
leapyear=0;//不是闰年则为0
month=1;//因为12月的下一个月是1月
}
}
}while(sum>month_date[month-1]);//当加起来的天数少于当月的天数就停止循环
day=sum;
printf("\n第%d天后是%d %d %d",daytime,year,month,day);//输出
getch();
}

‘贰’ C语言程序设计:输入一个日期(含年、月、日),编程序输出该日期是该年度中的第

y 年 m 月 d 日,是第几天 days 啊?
计算方法:
days = mon[1] + mon[2] + .... + mon[m-1] + d;
mon[i] 是 第 i 个月的天数;同时要注意,mon[2] 闰年29,否则28;

给出代码吧,虽然这样对你其实么有什么好处、

#include<stdio.h>

int main()
{
int mon[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30,31};
int y, m, d, days;
int leap, i;
scanf("%d %d %d", &y, &m, &d);
for(i = 1, days = 0; i < m; i++)
days += mon[i];
leap = (y % 4 == 0 && y % 100 || y % 400 == 0) ? 1 : 0;
if(m > 2)
days++;
printf("days = %d\n", days);
}

自己读,自己写,经常网络,不好~~~
刚才有个单词打错了,sorry、、~~

‘叁’ excel表在日期的提取年和月份做合并计算求合,不用添加辅助列

Excel在日期的提取年和月份做合并计算求和,不用添加辅助列,可以使用SUMPRODUCT函数和YEAR 函数和MONTH函数,输入公式,并向下填充,如下:

=SUMPRODUCT((YEAR($A$1:$A$8)=YEAR(A11))*(MONTH($A$1:$A$8)=MONTH(A11))*$B$1:$B$8)

公式及效果图

注:表中数据都是日期格式,无文本格式,因此用年和月份函数来计算求得。

‘肆’ c#编程语言中用于表达日期时间的结构的名字

获取日期型字段中的年月日字符的具体代码如下:

string date="2010-5-11";

DateTime dt=DateTime.Parse(date);

string yy=dt.Year.ToString();

string mm=dt.Month.ToString();

string dd=dt.Day.ToString();

上述代码中yy为获取得到的年份2010,mm为获取得到的月份5,dd为获取得到的日子11。

基本运算符

C使用运算符(operator)来代表算术运算。例如,+运算符可以使它两侧的值加在一起。如果您觉得术语“运算符”听起来比较奇怪,那么请您记住那些东西总得有个名称。

与其被称之为“那些东西”或“数学符号”,被称之为“运算符”似乎看起来更专业一些。

赋值运算符

在C里,符号=不表示“相等”,而是一个赋值运算符。下面的语句是将2014赋给num的变量。
num=2014;

也就是说,符号=的左边是一个变量名,右边是赋给该变量的值。符号=被称为赋值运算符(assignment operator)。再次强调不要把这行代码读做“num等于2014”,而应该读为“将值2014赋给变量num”。赋值运算符的动作是从右到左。

或许变量的名字和变量值之间的区别看起来微乎其微,但是请考虑下面的常量计算机语句:
i=i+1;

在数学上,该语句没有任何意义。如果您给一个有限的数加1,结果不会“等于”这个数本身。它意味着“找到名字为i的变量的值:然后对那个值加1,然后将这个新值赋给名字为i的变量”。

以上内容参考:网络——c语言

‘伍’ 运用Java程序设计语言,设计一个日期计算类DateCal

/**
* 日历类 作者:lyj
* @author Administrator
*
*/
public class MyCalender {

private int year,month,day;//年月日
private static final int BIG_MONTH=31,SMALL_MONTH=30,LEAPYEAR=29,PINGYEAR=28;
private static final int ONE=1,TWELEVE=12;
/**
* 构造函数
* @param year 年
* @param month 月
* @param day 日
*/
public MyCalender(int year,int month,int day){

this.year=year;
this.month=month;
this.day=day;
}
/**
* 判断日历是否合法
* @param my 日历
* @return 1 合法 0不合法
*/
public int isValid(MyCalender myCal){
//年份不能小于1
//月份不能大于12或者小于1
//日期不能大于31或者小于1
if((myCal.year<ONE) ||(myCal.month>TWELEVE||myCal.month<ONE)||
myCal.day<ONE||myCal.day>BIG_MONTH)
return 0;

return 1;

};
/**
* 返回日历的前一天
* @param d
* @return
* @throws Exception
*/
public MyCalender previousDate(MyCalender myDay) throws Exception{
if(isValid(myDay)==0||day>howDay()){
throw new Exception("日历不合法!");
}

else if(day-1==0){
myDay.setMonth(month-1);//月份往前减一
myDay.setDay(howDay());
if(month==0){
myDay.setYear(year-1);
myDay.setMonth(12);
myDay.setDay(howDay());
}

}

else myDay.setDay(day-1);

return myDay;
};

/**
* 返回日历的后一天
* @param d
* @return
* @throws Exception
*/
public MyCalender nextDate(MyCalender myDay) throws Exception{
if(isValid(myDay)==0||day>howDay()){
throw new Exception("日历不合法!");
}
//如果后一天大于当前日期的当月天数那么月份+1
else if(day+1>howDay()){
myDay.setDay(1);//日期为1
myDay.setMonth(month+1);
//如果月份大于12的话就年份加1
if(month>12){
myDay.setMonth(1);//月份设置为1
myDay.setYear(year+1);

}
}
else
myDay.setDay(day+1);

return myDay;
};

/**
*获得当前月份有多少天
* @param year
* @return
*/
private int howDay(){
switch (month) {
case 1:case 3:case 5:case 7 :case 8:case 10:case 12:
return BIG_MONTH;
case 2:
if(isLeapyear())
return LEAPYEAR;
return PINGYEAR;

}
return SMALL_MONTH;
}
/**
* 判断是否是平年
* @return
*/
protected boolean isLeapyear(){
return ((year%4==0 && year%100!=0)||(year%400==0));

}

@Override

public String toString() {

return year+"年"+month+"月"+day+"日";
};
/************************set********************************/

public void setYear(int year) {
this.year = year;
}
public void setDay(int day) {
this.day = day;
}
public void setMonth(int month) {
this.month = month;
}
/*************************set***************************************
//测试入口
* @throws Exception */
public static void main(String[] args) throws Exception {
MyCalender my=new MyCalender(2012,11,29);
System.out.println(my.howDay());
System.out.println(my.previousDate(my));
System.out.println(my.nextDate(my));
System.out.println(my.nextDate(my));
System.out.println(my.nextDate(my));
System.out.println(my.nextDate(my));
}

}
楼主你好 目前只实现了你需要的东西
还有就是我新创了一个群 不介意的话来交流 261957883

‘陆’ EXCEL怎么把年、日期和时间合并在一起

用&连接起来,=A1&"-"&B1&" "&C1
第三列是时间格式,所以必须转化为希望的格式后再&
应该是这样的
,=A1&"-"&B1&" "&TEXT(C1,"H:MM")

‘柒’ c语言编程,有提示的

要把一个年月日表示成一个数,一般是10000x年+100x月+日

#include <stdio.h>


int Rc(int s, int y) {

int c = 0;

for (int i = s; i < y; i++)

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

c++;

return c;

}


int TandN(int n) {

int two = 0, nine = 0;

while (n) {

if (n % 10 == 2) two++;

if (n % 10 == 9) nine++;

if (two && nine) return 1;

n /= 10;

}

return 0;

}


int main() {

int q, y, m, d, c;

int cntDay[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};


scanf("%d", &q);

while (q--) {

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

c = 0;

for (int i = 1; i < y; i++)

for (int j = 1; j <= 12; j++)

for (int k = 1; k <= cntDay[j - 1]; k++)

c += TandN(10000 * i + 100 * j + k);


for (int j = 1; j < m ; j++)

for (int k = 1; k <= cntDay[j - 1]; k++)

c += TandN(10000 * y + 100 * j + k);


for (int k = 1; k <= d; k++)

c += TandN(10000 * y + 100 * m + k);


if (Rc(y, y + 1)) c += m > 2 || (m == 2 && d == 29);

c += Rc(1, y);

printf("%d ", c);

}

return 0;

}

‘捌’ 用c语言写一个程序,输入年月日,把日期自动加一天,然后输入.

这是阳历的常识:
阳历(即公历),是世界上多数国家通用的历法,由"儒略历"修订而成。儒略历

是公元前46年,古罗马统帅儒略、恺撒决定采用的历法。
阳历,是以地球绕太阳运动作为根据的历法。它以地球绕太阳一周(一回归年)为

一年。一回归年的长度是365.2422日,也就是365天5小时48分46秒,积累4年共有23小时

15分4秒,大约等于一天,所以每4年增加1天,加在2月的末尾,得366天,就是闰年。但

是4年加1天实际回归年多了44分56秒,积满128年左右就又多算了一天,也就是在400年中

约多算了3天。
阳历闰年规定:公元年数可用4整除的,就算闰年;为了要在400年减去多算的3天,

并规定公元世纪的整数,即公元年数是100的整数时,须用400来整除的才算闰年,如1600

年、2000年、2200年、2400年就是闰年。这样就巧妙地在400年中减去了3天,阳历规定每

年都是12个月,月份的大小完全是人为的规定,现在规定每年的1、3、5、7、8、10、12

月为大月,每月31天;4、6、9、11月为小月,每月30天;2月平年是28天,闰年是29天。

归纳上面的得出结论:
阳历:
闰年,2月29天,平年28天。
其它月,1、3、5、7、8、10、12为大月31天。
2、4、6、9、11为小月30天。
能被400整除的是闰年;
除能被100整除的不是闰年(能被400整除的除外)其余能被4整除的是闰年。

所以你只要计算是不是闰年,就可以识别2月份了,所以这个应该不是很难,关键

是闰年。
下面是我花了30分钟写的程序,我一直用C++,由于不知道C支不支持布尔型,所以两个判断的函数返回用整型。你看一下程序能不能运行。我在VC60下编译通过。

#include "stdio.h"
int IsLeapYear(int Year);//判断是不是闰年。
int IsCurrentDate(int Year,int Month,int Day);//是不是正确的日期。
int ReturnNextDay(int Year,int Month,int Day);//返回下一天,也有判断是不是正确的日期。
int LeapYear_Month_SumDay[12]={31,29,31,30,31,30,31,31,30,31,30,31};//闰年数组,保存各月天数。
void main()
{
int Year=0,Month=0,Day=0,NextDay=0;
printf("pleace enter right Date(example:2005 6 27):\n");
scanf("%d%d%d",&Year,&Month,&Day);
NextDay=ReturnNextDay(Year,Month,Day);

switch (NextDay)
{
case 0: printf("not a current date\n");
break;
case 1:
if (Month==12)
{
Year++;
Month=1;
}
else
{
Month++;
}
break;
}
if (NextDay!=0) printf("The you input next date is %d-%d-%d.Thank use bye bye!\n",Year,Month,NextDay);

}

int IsLeapYear(int Year)
{
if (Year%4==0)
{
if (Year%400) return 1;
else
{
if (Year%100==0) return 0;
else return 1;
}
}
else
{
return 0;
}
}

int IsCurrentDate(int Year,int Month,int Day)
{
if ((Year<0) && (Year>9999) && (Month>12) && (Month<1) && (Day<1) &&(Day>31) )return 0;
else return 1;
}

int ReturnNextDay(int Year,int Month,int Day)
{
int ThisMonthSumDay;
if (IsCurrentDate(Year,Month,Day)==1)
{
ThisMonthSumDay=LeapYear_Month_SumDay[Month-1];
if (Month==2)
{
if (IsLeapYear(Year)==0) ThisMonthSumDay--;
}
if (Day<ThisMonthSumDay)
{
return ++Day;
}
else
{
if (Day==ThisMonthSumDay)
{
return 1;
}
else
{
return 0;
}

}
}
else
{
return 0;
}

}

‘玖’ excel内如何将日期和时间合并

1.打开Excel表格,选中需要合并日期时间的单元格。

2.如果我们要合并B7和C7单元格里的日期时间,那么我们可以在单元格里输入“=B7+C7”即可。

3.这样B7与C7单元格里的日期时间就合并啦,是不是很简单呢?

阅读全文

与日期月份合并编程语言相关的资料

热点内容
python列表求交集 浏览:872
解压包如何转音频 浏览:447
机明自动编程软件源码 浏览:325
php端口号设置 浏览:540
phperegreplace 浏览:320
androidgridview翻页 浏览:537
ssh协议编程 浏览:634
如何开我的世界电脑服务器地址 浏览:861
玄关pdf 浏览:609
程序员学习论坛 浏览:940
程序员的毒鸡汤怎么做 浏览:548
安卓怎么降级软件到手机 浏览:281
云与服务器入门书籍推荐产品 浏览:636
delphi编程助手 浏览:762
电脑遇到服务器问题怎么办 浏览:515
加工中心编程结束方法 浏览:296
了解什么是web服务器 浏览:140
面向对象的编程的基本特征 浏览:718
php定时执行任务linux 浏览:787
php数组中删除元素 浏览:725