導航:首頁 > 編程語言 > 日期月份合並編程語言

日期月份合並編程語言

發布時間: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單元格里的日期時間就合並啦,是不是很簡單呢?

閱讀全文

與日期月份合並編程語言相關的資料

熱點內容
銀河麒麟字體庫存在哪個文件夾 瀏覽:956
魔獸加丁伺服器的航空叫什麼 瀏覽:152
花冠改裝案例哪個app多 瀏覽:515
成績單app哪個好用 瀏覽:140
北美程序員vs國內程序員 瀏覽:181
php解析xml文檔 瀏覽:121
石墨文檔APP怎麼橫屏 瀏覽:185
牆主鋼筋加密和非加密怎麼看 瀏覽:144
金山區文件夾封套定製 瀏覽:708
soho程序員 瀏覽:672
java位元組截取 瀏覽:525
php提交作業 瀏覽:815
房產還沒解壓可以辦理贈予嗎 瀏覽:224
java毫秒轉分鍾 瀏覽:753
模式識別中文pdf 瀏覽:774
c語言平均數字編譯錯誤 瀏覽:171
單片機算交流 瀏覽:45
php自適應網站 瀏覽:467
2b2t伺服器怎麼獲得許可權 瀏覽:816
c語言javaphp 瀏覽:804