标题：日期
概述
词目：日期 
拼音：rì qī　（台湾读音：rì qí）
注音：ㄖˋ　ㄑㄧˊ
词性：名词
释义：约定的日子和时间。
示例：邮戳上的日期模糊不清。
基本解释
约定的日子和时间
邮戳上的日期模糊不清
解释
发生某一事情的确定的日子或时期。《元史·郝经传》：“ 经 至 宿州 ，遣副使 刘仁杰 、参议 高翿 请入国日期，不报。”《官场现形记》第七回：“只要同你讲得来，包你事事办得妥当，而且又省钱，又不会耽误日期。” 鲁迅《呐喊·故乡》：“我已经将你到家的大约日期通知他，他也许就要来了。”
书写格式
在使用Word和Excel起草的各类文件中，如果日期书写格式五花八门，不仅难看还容易和数据发生混淆，特别是报表中错写的日期不能立即参与计算，给统计工作带来一定的影响。文件中的日期书写格式应为：
一、公历日期标准格式为；
2007年2月6日；或：2007-02-06。 　
中文日期标准格式为：二〇〇七年二月六日， 　
农历日期标准格式为：丙戌年腊月十九日。 　
二、日期书写不得以小数点或顿号代替年月日，如：2007.2.6； 2007、2、6。 　
三、年月日中的年号必须写全，不能简写成： 07年2月6日；或： 07-02-06。 　
四、中文日期的书写： 　
（一）凡使用繁体字的文件，日期可以中文格式书写，其方法是在Word中点“插入”/“日期和时间”，选择中文日期格式，如：二〇〇七年二月六日。 　
（二）书写中文日期不得以键盘输入“0”，如：二00七年二月六日，这样书写会十分难看。 　
（三）凡使用简体字的文件，最好不要书写中文格式日期。 　
五、文中涉及到中国干支纪年和夏历月日应使用汉字。如：甲子年十月十五日　腊月二十日　正月初八等。
六、文中凡涉及到中国清代和清代以前的历史纪年、各民族的非公历纪年等均用汉字，这类纪年不应与公历月日混用，并应采用阿拉伯数字括注公历。如：秦文公四十四年（公元前722年）。 　
七、Excel中的日期是可以参与计算的，只能按公历日期标准格式书写。 　
即；2007年2月6日；或：2007-02-06。 　
如需使用实时走动日期，可输入日期函数：“=TODAY()”。日期函数可以参与计算。 　
如果按右键/设置单元格格式/日期/选择带星期的格式，这种只有日期的格式将自动转换成“2007年2月6日 星期二”这种带星期的格式。 　
——这也是用Excel查询某日星期几的一种简便方法——在有年月日星期格式的单元格中修改日期，会自动显示星期数。如在“2007年2月6日 星期二”单元格中将日期修改为“2012-2-9”则会自动显示“2012年2月9日 星期四”。
八、JavaScript中的日期
[1] 可以通过 new 关键词来定义 Date 对象。以下代码定义了名为 myDate 的 Date 对象：
var myDate = new Date() 日期对象也可用于比较两个日期。
下面的代码将当前日期与 2008 年 8 月 9 日做了比较：
var myDate = new Date(); myDate.setFullYear(2008, 7, 9); var today = new Date(); if (myDate > today) { alert("Today is before 9th August 2008"); } else { alert("Today is after 9th August 2008"); } abc　九、Excel中输入日期是十分简便的，如要显示；2007年2月6日，或：2007-02-06，只需输入“2-6”回车即可，如果未能正常显示，可在“设置单元格格式”中进行设置；如果要输入当前日期，则按ctrl+ ；（分号）即可。 　
十、凡报表中含日期错写者，可替换为正确日期格式后再使用。 　
十一、没有日期落款的文件是不规范的文件，法规性的文件日期落款就尤为重要。文件署有落款日期，可追索文件的成文时间与时效性，并可作为法律诉讼的重要依据。
[2]
转化
已知某日期（即某年-某月-某日），如何计算该日期是星期几。下面叙述计算原理：首先算出这一年的元旦是星期几。算法如下：
①输入年份year；
②根据下面公式计算：d=year+(year-1)/4-(year-1)/100+(year-1)/400; d=d%7;
d=0则表示为Sunday,d=1则表示为Monday...依此类推。
③输入月份month和日期day，计算该日期是这个年份中的第几天（x）；
④计算(x+d－1)%7，得到星期几。
注意:月份中的二月是28天还是29天，需看年份是否为闰年，闰年定义为：年份能被400整除的是闰年，或者年份能被4整除但不能被100整除的是闰年。
下面为c语言实现输入年-月-日，输出为对应日期的星期几。测试数据：输入 2014-1-2 输出 Thursday
-------------------------------------c语言实现------------------------------------
#include<stdio.h>
int isLeapYear(int year){
if((year%4==0&&year%100!=0)||year%400==0)
return 1;
return 0;
}
void main(){
int year=0,month=0,day=0;
int d,x=0;
char c[7][10]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};
printf("请输入年月日，例如：2012-2-21\n");
scanf("%d-%d-%d",&year,&month,&day);
//计算该年份的元旦是星期几
d=year+(year-1)/4-(year-1)/100+(year-1)/400;
d=d%7;
printf("d=%d\n",d);
switch(month){
case 12: x+=day;
case 11: 
if(month==11) x+=day;
else x+=30;
case 10: 
if(month==10) x+=day;
else x+=31;
case 9: 
if(month==9) x+=day;
else x+=30;
case 8: 
if(month==8) x+=day;
else x+=31;
case 7: 
if(month==7) x+=day;
else x+=31;
case 6: 
if(month==6) x+=day;
else x+=30;
case 5: 
if(month==5) x+=day;
else x+=31;
case 4: 
if(month==4) x+=day;
else x+=30;
case 3: 
if(month==3) x+=day;
else x+=31;
case 2: 
if(month==2) x+=day;
else x+=29;
case 1: 
if(month==1) x+=day;
else x+=31;
}
if(!isLeapYear(year)&&month>2)//如果不是闰年且输入月份大于2则要-1
x-=1;
//根据该年元旦d，则可以计算出该年第x年是星期几
d=(x+d-1)%7;
switch(d){
case 0:
printf("该日期是：%s",c[0]);
break;
case 1:
printf("该日期是：%s",c[1]);
break;
case 2:
printf("该日期是：%s",c[2]);
break;
case 3:
printf("该日期是：%s",c[3]);
break;
case 4:
printf("该日期是：%s",c[4]);
break;
case 5:
printf("该日期是：%s",c[5]);
break;
case 6:
printf("该日期是：%s",c[6]);
break;
}
printf("\n");
}
-------------------------------------c语言实现------------------------------------