華為平板是可以安裝windows系統(tǒng)的。你直接將您的平板上的操作系統(tǒng)關(guān)閉,然后再重新安裝您的windows操作系統(tǒng)。

創(chuàng)新互聯(lián)公司專注于企業(yè)全網(wǎng)整合營銷推廣、網(wǎng)站重做改版、平原網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、html5、購物商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為平原等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
1.(新增)全新的壁紙和快捷條圖標(biāo)(在“桌面設(shè)置-個(gè)性化設(shè)置”)
2.(新增)開關(guān)和日歷小部件更新2套全新樣式
3.(新增)增加私密安全鎖功能
4.(修復(fù))重置的問題 1.(新功能)功能表 增加自動整理圖標(biāo)選項(xiàng)
2.(新功能)增加3種手勢操控選項(xiàng)
3.(新功能)增加4種桌面劃屏特效
4.(修復(fù))修復(fù)部分bug 1.(新功能)增加2個(gè)滑屏特效(漸影、玻璃)
2.(新功能)主題預(yù)覽、鎖屏圖標(biāo)增加主題更新數(shù)提示
3.(新功能)增加淘寶小部件(菜單-添加-GO小部件)
4.(修復(fù))修復(fù)某些情況下主題購買后無法使用的問題
5.(修復(fù))針對酷派手機(jī)無法清除系統(tǒng)桌面默認(rèn)選項(xiàng)的問題 1.(新功能)增加自動清理屏幕上圖標(biāo)的功能(菜單-屏幕清理)
2.(新功能)桌面設(shè)置增加新功能預(yù)告提示(關(guān)于GO桌面)
3.(新功能)支持Toucher主題切換(添加-主題-Toucher)
4.(修復(fù))評分彈出的錯誤彈出問題 1.(新功能)全新 的系統(tǒng)設(shè)置頁面
2.(新功能)增加GO桌面插件管理功能(菜單-周邊)
3.(優(yōu)化)桌面設(shè) 置增加快捷設(shè)置模塊
4.(優(yōu)化)支持部 分其他第三方桌面主題
5.(修復(fù))多次彈 出評分提示框的問題
6.(修復(fù))收費(fèi)主 題在4.1系統(tǒng)上無法使用部分圖標(biāo)的問題 1(新功能) 多屏多壁紙支持選擇主題壁紙
2(新功能)新建功能表文件夾可自動命名
3(優(yōu)化)桌面設(shè)置分類和操作
4(修復(fù))功能表出現(xiàn)兩個(gè)相同圖標(biāo)的問題
5(修復(fù))選擇壁紙時(shí)桌面崩潰的問題 1.修復(fù)插件使用問題
2.新增多款主題 1. 增加了元旦人氣主題;
2.(新功能)多屏多壁紙插件支持選擇主題壁紙;
3.(優(yōu)化)資源瀏覽模塊插件化;
4.(優(yōu)化)快捷條功能表圖標(biāo)支持刪除操作(長按功能表圖標(biāo)-刪除);
5.(優(yōu)化)功能表首欄文件夾支持點(diǎn)擊操作(功能表-長按應(yīng)用圖標(biāo));
6.(優(yōu)化)個(gè)性化設(shè)置操作細(xì)節(jié); 1.(優(yōu)化)修改GO手冊部分內(nèi)容
2.(修復(fù))Home鍵手勢失效的問題
3.(修復(fù))主屏幕快捷方式失效的問題
4.(修復(fù))跳轉(zhuǎn)到主屏幕時(shí)的過渡特效
5.(修復(fù))劃動屏幕出現(xiàn)黑屏的問題 1.(修復(fù))進(jìn)出功能表出現(xiàn) 殘影的問題
2.(修復(fù))Nexus 7添加界面被截?cái)嗟膯栴}
3.(修復(fù))下劃手勢在4.2系統(tǒng)上無法使用的問題
4.(修復(fù))GO省電導(dǎo)致的4.2系統(tǒng)崩潰問題
v3.17 更新:
1. (新功能)全新的設(shè)置界面風(fēng)格(桌面菜單-桌面設(shè)置)
2. (新功能)桌面推薦小部件支持批量下載
3. (新功能)圖片、音樂、視頻快捷方式圖標(biāo)(可通過GO快捷方式添加)
4. (優(yōu)化)功能表圖標(biāo)放入文件夾的操作體驗(yàn)
5. (優(yōu)化)桌面圖標(biāo)/小部件拖動軌跡動畫
6. (優(yōu)化)應(yīng)用中心搜索功能的操作體驗(yàn)
7. (優(yōu)化)主程序集成通訊統(tǒng)計(jì)插件
8. (修復(fù))圖標(biāo)裁剪的問題 1、(新功能)功能表支持上下滑手勢隱藏選項(xiàng)卡與操作欄;
2、(新功能)圖標(biāo)排序支持按使用頻率排序;
3、(新功能)資源瀏覽支持內(nèi)置播放器;
4、(優(yōu)化)圖標(biāo)自定義大小選項(xiàng)支持更大數(shù)值;
5、(優(yōu)化)自定義手勢列表縮略圖增加動畫效果;
6、(優(yōu)化)快捷欄+號增加空白選項(xiàng);
7、(修復(fù))功能表菜單主題背景丟失的問題。 1、(新功能)UI3.0全新配套圖標(biāo)和網(wǎng)格繪制;
2、(新功能)快捷條支持自適應(yīng)個(gè)數(shù)及大小;
3、(新功能)全新的操作提示UI界面;
4、(優(yōu)化)軟件管理支持提示可移動的手機(jī)內(nèi)存/SD卡應(yīng)用;
5、(優(yōu)化)隱藏快捷欄后屏幕使用區(qū)域;
6、(優(yōu)化)添加GO小部件的UI界面(長按桌面空白處進(jìn)入)。 1、(新功能)更便捷的添加界面(長按桌面空白處進(jìn)入);
2、(新功能)功能表全新的UI界面和操作體驗(yàn);
3、(優(yōu)化)軟件管理支持區(qū)分手機(jī)內(nèi)存/SD卡應(yīng)用;
4、(優(yōu)化)初始安裝的用戶提示界面和桌面擺設(shè);
5、(優(yōu)化)提升劃動桌面的流暢度;
6、(修復(fù))文件夾新樣式的部分問題。 1、(新功能)全新的屏幕預(yù)覽界面和操作體驗(yàn)(拖動刪除屏幕);
2、(新功能)支持從其他桌面復(fù)制圖標(biāo)(高級設(shè)置內(nèi));
3、(優(yōu)化)提升屏幕劃動時(shí)的流暢性;
4、(優(yōu)化)修改初次安裝桌面的用戶提示體驗(yàn);
5、(修復(fù))豎向功能表使用瀑布特效時(shí)的顯示問題。 1、(新功能)GO桌面消息中心上線;
2、(新功能)GO精品全面調(diào)整UI體驗(yàn),新增1x4小部件;
3、(優(yōu)化)調(diào)整上下滑操作手勢的默認(rèn)選項(xiàng)(支持手勢激活Menu菜單);
4、(優(yōu)化)Menu菜單的“更多”選項(xiàng)欄的按鈕排序;
5、(修復(fù))操作手勢導(dǎo)致的無法卸載GO桌面問題(需要安裝開關(guān)小部件來使用手勢鎖屏功能)。 1、(新功能)Menu菜單增加消息中心入口;
2、(優(yōu)化)文件夾的界面匹配和操作體驗(yàn);
3、(優(yōu)化)通過功能表進(jìn)行應(yīng)用更新的操作體驗(yàn);
4、(修復(fù))加載內(nèi)存卡時(shí)導(dǎo)致的freeze問題。 1. (新功能)可通過“檢查垃圾數(shù)據(jù)”功能清除功能表重復(fù)圖標(biāo)(桌面設(shè)置-高級設(shè)置);
2. (優(yōu)化)功能表的歷史記錄顯示隱藏圖標(biāo)問題;
3. (優(yōu)化)新建功能表文件夾的響應(yīng)速度;
4. (修復(fù))功能表文件夾圖標(biāo)重復(fù)的問題;
5. (修復(fù))在使用主題時(shí)出現(xiàn)屏幕花屏的問題; 1. (新功能)支持GO桌面整體主題,可一次性更換桌面、小部件和鎖屏主題;
2. (新功能)桌面文件夾支持自定義應(yīng)用圖標(biāo)位置;
3. (新功能)操作手勢增加鎖屏功能(需要申請鎖屏權(quán)限,卸載時(shí)請先清除權(quán)限;
4. (優(yōu)化)手勢設(shè)置的設(shè)置選項(xiàng)和操作流程;
5. (修復(fù))圖標(biāo)合并文件夾背景顯示錯誤問題;
6. (修復(fù))Galaxy Nexus的默認(rèn)行列數(shù)錯誤問題。 1、新功能,桌面和功能表特效支持自定義隨機(jī)特效;
2、優(yōu)化桌面文件夾不顯示隱藏應(yīng)用;
3、優(yōu)化功能表搜索的圖標(biāo)顯示問題;
4、優(yōu)化更新版本后的默認(rèn)桌面設(shè)置問題。 1.(優(yōu)化)功能表隱藏菜單增加確定和取消按鈕;
2.(優(yōu)化)修改GO精品圖標(biāo)的更新標(biāo)識顯示機(jī)制;
3.(優(yōu)化)修改功能表的應(yīng)用更新提示顯示機(jī)制;
4.(修復(fù))功能表在特定情況下出現(xiàn)的崩潰問題。 1. (新功能)桌面移動圖標(biāo)及小部件時(shí)顯示網(wǎng)格標(biāo)識;
2. (優(yōu)化)合并文件夾后自動彈出編輯列表,可快速添加應(yīng)用進(jìn)入文件夾;
3. (優(yōu)化)調(diào)整桌面設(shè)置內(nèi)的選項(xiàng)排序和描述;
4. (優(yōu)化)桌面鎖定編輯后,不可編輯文件夾內(nèi)的圖標(biāo);
5. (優(yōu)化)更新分享功能的文案和鏈接(請幫助我們分享GO桌面到微博)。 1.(新功能)快捷條圖標(biāo)跟隨自定義圖標(biāo)大小功能一并修改 ;
2.(優(yōu)化)選擇大圖標(biāo)模式時(shí),指示器返回桌面頂部 ;
3.(優(yōu)化)當(dāng)前屏幕空間不足添加GO小部件時(shí),進(jìn)入屏幕預(yù)覽選擇其他屏幕 ;
4.(優(yōu)化)刪除和修改大部分的彈出文案提示;
5.(優(yōu)化)用戶提示界面的指示器顯示效果。 1.(新功能)Menu菜單新Tab樣式(左右滑動);
2.(新功能)QA用戶提示(關(guān)于GO桌面選項(xiàng)內(nèi));
3.(新功能)桌面文件夾+號快速編輯功能 ;
4.(修復(fù))小分辨率下功能表的界面問題。 1.(新功能)GO桌面小部件添加列表支持提示更新(長按桌面——GO桌面小部件) ;
2. (新功能)完善提示系統(tǒng)功能表提示;
3. (優(yōu)化)鎖定屏幕的用戶提示信息(通知欄顯示解鎖路徑);
4. (優(yōu)化)圖標(biāo)點(diǎn)擊顏色的選擇界面(取消返回鍵的提示框);
5. (修復(fù))自定。 1.(新功能)隱藏主題圖標(biāo)底圖(個(gè)性化設(shè)置);
2.(新功能)自定義圖標(biāo)字體大小;
3.(優(yōu)化)功能表文件夾操作體驗(yàn) ;
4.(優(yōu)化)桌面圖標(biāo)推壓的動態(tài)效果;
5.(修復(fù))文件夾的圖標(biāo)縮略圖放大問題。 1.(新功能)自定義圖標(biāo)大小(桌面設(shè)置——個(gè)性化設(shè)置——圖標(biāo)設(shè)置——圖標(biāo)大小設(shè)置);
2.(優(yōu)化)GO桌面小部件管理流程;
3.(優(yōu)化)屏幕預(yù)覽模塊提示信息 ;
4.(修復(fù))開關(guān)小部件卸載問題。 1. 新增鎖屏功能;
2. 新增功能表圖標(biāo)特效(3D效果);
3.(新)主題商城正式上線;
4.修復(fù)Menu鍵沒有振動的問題;
5.優(yōu)化桌面圖標(biāo)快捷菜單。 1.新功能:桌面支持更多行列數(shù)選擇;
2.新功能:支持軌跡球屏幕翻頁;
3.優(yōu)化:新的快捷條圖標(biāo)和功能表樣式;
4.修復(fù):壁紙沒有隨主題更換的問題。 1.修復(fù):在某些機(jī)型上的卡死問題(MOTO);
2.新功能:MENU菜單加入更多選項(xiàng);
3.優(yōu)化:退出GO桌面后清除內(nèi)存殘余;
4.修復(fù):無法進(jìn)入功能表編輯模式的問題;
5.修復(fù):在高分辨率下快捷條背景錯誤的問題;
6.修復(fù):樂Phone壁紙及圖標(biāo)錯誤的問題;
7.修復(fù):修復(fù)上個(gè)版本中遺留的大量問題。 1. (新功能) Menu菜單加入更多選項(xiàng);
2. (優(yōu)化) 退出GO桌面后清除內(nèi)存殘余;
3. (修復(fù)) 無法進(jìn)入功能表編輯模式的問題;
4. (修復(fù)) 在高分辨率下快捷條背景錯誤的問題;
5. (修復(fù)) 樂phone壁紙及圖標(biāo)錯誤的問題。 1. (修復(fù)) v2.26的嚴(yán)重bug;
2. (新功能) 功能表翻屏特效(5款酷炫效果);
3. (優(yōu)化) 桌面及功能表圖標(biāo)重新加載的問題;
4. (優(yōu)化) 整體內(nèi)存使用率;
5. (修復(fù)) 無法進(jìn)入屏幕預(yù)覽的問題。 1. (新功能) 功能表翻屏特效(5款酷炫效果);
2. (優(yōu)化) 桌面及功能表圖標(biāo)重新加載的問題;
3. (優(yōu)化) 整體內(nèi)存使用率;
4. (修復(fù)) 無法進(jìn)入屏幕預(yù)覽的問題。 1. (優(yōu)化)功能表文件夾打開與關(guān)閉的背景顏色淡入淡出效果;
2. (修復(fù))進(jìn)入桌面設(shè)置崩潰的問題 – 是由于內(nèi)存不足引起,請重啟桌面試試(菜單-退出桌面,再進(jìn)入);
3. (修復(fù))部分機(jī)型啟動卡的問題;
4. (修復(fù))部分小分辨率/特殊分辨率機(jī)型設(shè)置壁紙不正確的問題。 1. (新功能) 更換字體功能支持掃描SD卡特定文件夾(GOLauncherEX/fonts)中的字體文件;
2. (優(yōu)化) 桌面及功能表圖標(biāo)重新加載的問題;
3. (修復(fù)) 部分小分辨率及M9機(jī)型的主題預(yù)覽和屏幕預(yù)覽問題;
4. (修復(fù)) M9機(jī)型的快捷條點(diǎn)擊問題;
5. (修復(fù)) 使用Menu鍵解鎖時(shí)不會彈出菜單(CM6);
6. (修復(fù)) 進(jìn)入桌面設(shè)置和系統(tǒng)設(shè)置的崩潰。 1. (新功能) 桌面操作手勢支持隱藏快捷欄(桌面設(shè)置-操作設(shè)置);
2. (新功能) 新的Menu菜單界面;
3. (新功能) GO桌面小部件-任務(wù)管理支持點(diǎn)擊單個(gè)圖標(biāo)關(guān)閉程序及上下翻動查看任務(wù);
4. (優(yōu)化) 提升功能表滑動流暢度;
5. (修復(fù)) 快捷條重復(fù)圖標(biāo)和圖標(biāo)消失問題;
6. (修復(fù)) 如果你經(jīng)常遇到圖標(biāo)加載問題,請開啟“常駐內(nèi)存”選項(xiàng)(桌面設(shè)置-高級設(shè)置-常駐內(nèi)存)。 1. 發(fā)布兩款GO桌面小部件 - 任務(wù)管理、聯(lián)系人;
2. 支持功能表文件夾與桌面文件同步;
3. 優(yōu)化快捷條更換背景圖的操作流程;
4. 修復(fù)內(nèi)存不足導(dǎo)致的問題。 1. 支持更換桌面顯示字體(桌面設(shè)置-高級設(shè)置);
2. 添加至桌面菜單支持批量添加應(yīng)用;
3. 修復(fù)功能表文件夾卡的問題;
4. 優(yōu)化功能表進(jìn)出特效的效果(風(fēng)車特效);
5. 優(yōu)化快捷條操作體驗(yàn)。 1. 桌面文件夾列表增加功能表文件夾選項(xiàng);
2. 增加垃圾桶和DOCK移除時(shí)的動畫;
3. 修復(fù)小分辨率的機(jī)型壁紙適配問題;
4. 優(yōu)化桌面圖標(biāo)的操作體驗(yàn)細(xì)節(jié);
5. 優(yōu)化功能表文件夾的操作體驗(yàn)細(xì)節(jié);
2010/4/1更新:手繪主題、經(jīng)典主題、水墨主題、浪漫主題、木紋主題、情人節(jié)主題特別版、喜慶主題。 1. 快捷條支持更換不同主題樣式(需更新主題);
2. 優(yōu)化功能表新安裝程序的排序方式;
3. 文件夾打開應(yīng)用后自動關(guān)閉;
4. 優(yōu)化功能表進(jìn)出動畫;
5. 優(yōu)化快捷條的通訊統(tǒng)計(jì)模塊;
2011/3/21更新:浪漫主題、木紋主題、情人節(jié)主題特別版、喜慶主題。 1. 增加桌面圖標(biāo)的通訊統(tǒng)計(jì)顯示(需先安裝GO桌面通訊統(tǒng)計(jì));
2. 增加進(jìn)出功能表特效;
3. 增加功能表新建文件夾動畫效果;
4. 修復(fù)桌面和快捷條圖標(biāo)重復(fù)問題(請通過“桌面設(shè)置-高級設(shè)置-檢查垃圾數(shù)據(jù)”選項(xiàng)進(jìn)行修復(fù));
5. 修復(fù)Pure Widgets等桌面小插件無法點(diǎn)擊及添加錯誤的問題;
6. 修復(fù)退出其他程序后強(qiáng)制關(guān)閉的問題。 1. 修復(fù)幾個(gè)可能導(dǎo)致耗電的問題;
2. 修復(fù)關(guān)閉壁紙滾動選項(xiàng)后未生效的問題;
3. 修復(fù)功能表滑動屏幕緩慢的問題(2.3系統(tǒng));
4. 修復(fù)重啟手機(jī)后,主題圖標(biāo)消失的問題;
5. 優(yōu)化屏幕預(yù)覽的進(jìn)出特效;
6. 優(yōu)化屏幕預(yù)覽刪除屏幕的準(zhǔn)確性;
7. 增加功能表卸載程序小動畫;
8. 支持功能表文件夾圖標(biāo)排序。 1.增加設(shè)置備份與還原功能(高級設(shè)置內(nèi));
2.支持自定義快捷條背景;
3.支持不滾動壁紙(顯示設(shè)置內(nèi)的“壁紙滾動”選項(xiàng));
4.修復(fù)屏幕MENU菜單settings按鈕無法打開問題(Galaxy S /Epic 4G /Droid);
5.修復(fù)widget顯示不完整的問題(Pure Widget /Jorte /Greek Eortologio);
6.修復(fù)桌面聯(lián)系人快捷方式奔潰問題 (Droid)。 1.快捷條圖標(biāo)支持打開快捷方式;
2.增加功能表關(guān)閉程序白名單;
3.增加常駐內(nèi)存與阻止強(qiáng)制關(guān)閉選項(xiàng);
4.修復(fù)內(nèi)存溢出崩潰與功能表圖標(biāo)重復(fù)問題;
5.提升打開功能表速度;
6.支持繁體中文語言。 1.增加圣誕元素主題;
2.支持長按搜索鍵響應(yīng);
3.修復(fù)重啟后自定義圖標(biāo)失效問題;
4.修復(fù)內(nèi)存溢出后程序崩潰問題。 1.修復(fù)V1.20中直接更新導(dǎo)致的問題與崩潰問題;
2.新增功能表文件夾:在功能表內(nèi)拖動圖標(biāo)重疊可新建文件夾;
3.支持可滑動窗口小部件與調(diào)整小部件大小;
4.支持自定義圖標(biāo)樣式(測試功能);
5.解決某些機(jī)型奔潰問題,例如Droid和Droid X;
6.解決圖標(biāo)更新后消失與動態(tài)壁紙交互問題。 1.新增功能表文件夾:在功能表內(nèi)拖動圖標(biāo)重疊可新建文件夾;
2.支持可滑動窗口小部件與調(diào)整小部件大小;
3.支持自定義圖標(biāo)樣式(測試功能);
4.優(yōu)化運(yùn)行速度與功能表響應(yīng)速度;
5.解決某些機(jī)型奔潰問題,例如Droid和Droid X;
6.解決圖標(biāo)更新后消失、錯位問題;
7.支持動態(tài)壁紙交互響應(yīng)。 1.支持日文使用;
2.修復(fù)小寫字母開頭應(yīng)用排序錯誤問題;
3.修復(fù)部分初次進(jìn)入強(qiáng)制關(guān)閉問題;
4.修復(fù)部分機(jī)型滑動緩慢問題;
5.改善運(yùn)行中的電池消耗量。 1.修復(fù)部分初次進(jìn)入強(qiáng)制關(guān)閉問題;
2.修復(fù)部分機(jī)型滑動緩慢問題;
3.改善運(yùn)行中的電池消耗量。 1.支持功能表字母排序;
2.支持功能表時(shí)間排序。 1.提升屏幕滾動速度(更順暢);
2.修復(fù)SD卡應(yīng)用程序圖標(biāo)遺失問題;
3.修復(fù)某些機(jī)型的異常崩潰問題。 1.修復(fù)使用app organize添加文件夾消失問題;
2.修復(fù)隱藏狀態(tài)欄功能。
我以前寫過的一個(gè)程序可以滿足你這個(gè)要求。1、2對應(yīng)你的1、2。5對應(yīng)你的3 。5就是輸入兩個(gè)日期,求兩個(gè)日期之間間隔多少天,你可以把今天和需要的那天輸進(jìn)去。
*Press 1* See calendar of a certain year.
*Press 2* See calendar of a certain month in a certain year.
*Press 3* See what day is a certain date.
*Press 4* See how many days are there in a certain year.
*Press 5* See how many days are there between two dates.
(You enter the date today and the dead line to see
how many days are left.)
這個(gè)程序就兩個(gè)文件calendar.h, calendar.cpp
//calendar.cpp
#include iostream
#include string
#include iomanip //for setw()
#include cctype //for toupper()
#include cmath //for abs()
#include "calendar.h"
using namespace std;
//bool Is_Valid(/*in*/ int item,
// /*in*/ bool condition1 = true,
// /*in*/ bool condition2 = true)
//Check if the item is valid
//precondition:
// Arguments have been assigned values
//postcondition:
// true if the item is valid
// false if the item is invalid
/*
{
if(!condition1 || !condition2)
{
cout "Invalid item!" endl;
cout "The item should not be less than one!" endl;
cout "Enter again!" endl;
return false;
}
else
return true;
}
*/
bool Is_Valid(/*in*/ bool condition1 = true,
/*in*/ bool condition2 = true,
/*in*/ string condi_str1 = "",
/*in*/ string condi_str2 = "")
//Check if the item is valid
//precondition:
// Arguments have been assigned values
//postcondition:
// true if the item is valid
// false if the item is invalid
{
if(!condition1 || !condition2)
{
cout "Invalid item!" endl;
cout "Please check if the item meet the condition(s):" endl;
cout "1: " condi_str1 endl;
cout "2: " condi_str2 endl;
cout "Enter again!" endl;
return false;
}
else
return true;
}
template class T void swap(T *x, T *y )
{
T *temp = *x ;
*x = *y ;
*y = *temp ;
}
void See_Year_Cal()
{
int year;
cout "So you want to see calendar of a certain year." endl;
cout "Please enter the year:";
cin year;
Date a_date;
a_date.Set_Year(year);
cout endl;
a_date.PrintAll();
}
void See_Mon_Cal()
{
int year;
int month;
cout "So you want to see calendar of a certain month in a certain year. " endl;
do
{
cout "Please enter the year and month:";
cin year month;
}while(!Is_Valid(month 0,month 13,"month 0","month 13"));
Date a_date;
a_date.Set_Mon(year,month);
a_date.Print_A_Mon();
}
void See_WD()
{
Date a_date;
int year;
int month;
int date;
cout "So you want to see what day is a certain date. " endl;
do
{
cout "Please enter the year and month:";
cin year month;
}while(!Is_Valid(month 0,month 13,"month 0","month 13"));
do
{
cout "Please enter the date:";
cin date;
}while(!Is_Valid(date 0,date = a_date.Get_Days(),"date 0","date = days in the month"));
a_date.Set_Date(year,month,date);
cout endl;
cout year " / " month " / " date " is " a_date.What_Day() endl;
}
void See_DsIY()
{
int year;
cout "So you want to see how many days are there in a certain year. " endl;
cout "Please enter the year:";
cin year;
Year a_year(year);
cout endl;
cout "There are " a_year.Get_DsIY() " days in " year endl;
}
void See_Diff()
{
int year[2];
int month[2];
int date[2];
cout "So you want to see how many days are there between two dates." endl;
for(int i = 0;i 2;i++)
{
do
{
cout "Please enter year" i+1 " and month" i+1 ':';
cin year[i] month[i];
}while(!Is_Valid(month[i] 0,month[i] 13,"month 0","month 13"));
do
{
cout "Please enter the date" i+1 ":";
cin date[i];
}while(!Is_Valid(date[i] 0,date[i] = Days_In_Mon(year[i],month[i]),"date 0","date = days in the month"));
}
Date a_date[2];
for(i = 0;i 2;i++)
a_date[i].Set_Date(year[i],month[i],date[i]);
if(year[0] year[1])
swap(a_date[0],a_date[1]);
cout "There are " abs(a_date[0].Days_Between(a_date[1])) " days" endl;
cout " between " year[0] " - " month[0] " - " date[0] endl;
cout " and " year[1] " - " month[1] " - " date[1] endl;
}
void Take_Act(char choice)
{
switch(choice)
{
case '1':
See_Year_Cal();
break;
case '2':
See_Mon_Cal();
break;
case '3':
See_WD();
break;
case '4':
See_DsIY();
break;
case '5':
See_Diff();
break;
default: ;
}
}
int main()
{
char choice;
cout "What do you want to do?" endl endl;
cout "*Press 1* See calendar of a certain year." endl;
cout "*Press 2* See calendar of a certain month in a certain year. " endl;
cout "*Press 3* See what day is a certain date. " endl;
cout "*Press 4* See how many days are there in a certain year. " endl;
cout "*Press 5* See how many days are there between two dates." endl;
cout " (You enter the date today and the dead line to see" endl;
cout " how many days are left.) " endl;
cout "*Press q* Quit." endl endl;
cout "And then press enter." endl endl;
do
{
cin choice;
if(toupper(choice) == 'Q')
{
cout "Are you sure you want to quit? Y or N" endl;
Y_or_N: cin choice;
if(toupper(choice) == 'Y')
break;
else if(toupper(choice) == 'N')
{
cout "So what do you want to do next?" endl;
continue;
}
else
{
cout "Invalid!" endl;
cout "You should enter Y or N" endl;
cout "Please enter again:" ;
goto Y_or_N;
}
}
else if(choice != '1' choice != '2' choice != '3'
choice != '4' choice != '5')
{
cout "Invalid item!" endl;
cout "You should enter 1,2,3,4,5 or q." endl;
cout "Please enter again:" ;
continue;
}
Take_Act(choice);
cout endl "What else do you want to do?" endl;
cout "Press 1,2,3,4,5 or q to choose." endl;
cout "If you can't remember,go to the top and check it out." endl endl;
}while(true);
return 0;
}
//calendar.h
#ifndef CALENDAR_H
#define CALENDAR_H
#include iostream
#include string
#include iomanip //for setw()
using namespace std;
int Days_In_Mon(int year,int mon)
{
switch( mon )
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
return 31 ;
case 4:
case 6:
case 9:
case 11:
return 30 ;
case 2:
if( ( year % 4 == 0 ) ( year % 100 != 0 ) || ( year % 400 == 0 ) )
return 29 ;
else
return 28 ;
default:
return 0;
}
}
int Days_In_Year(int year)
{
if( ( year % 4 == 0 ) ( year % 100 != 0 ) || ( year % 400 == 0 ) )
return 366;
else
return 365;
}
int Nyd(int year)
{
int nyd;
int diff = 0; //days between year and 2007
int curr_year;
int min_year;
int max_year;
if(year 2007)
{
min_year = year;
max_year = 2007;
}
else
{
min_year = 2007;
max_year = year;
}
for(curr_year = min_year;curr_year max_year;curr_year++)
{
diff += Days_In_Year(curr_year);
}
if(year 2007)
nyd = -(diff % 7) + 1;
else
nyd = diff % 7 + 1;
if(nyd 0)
nyd += 7;
else if(nyd 6)
nyd -= 7;
return nyd;
}
//某年的某月的第一天是周幾
int Start_Day(int year,int NYD /*New Year Day*/,int mon)
{
int pre_days = NYD;
for(int i = 0;i mon;i++)
pre_days += Days_In_Mon(year,i);
return (pre_days % 7);
}
string Dig_Mon(int mon)
{
switch(mon)
{
case 1:
return "January";
case 2:
return "February";
case 3:
return "March";
case 4:
return "April";
case 5:
return "May";
case 6:
return "June";
case 7:
return "July";
case 8:
return "August";
case 9:
return "semtember";
case 10:
return "October";
case 11:
return "November";
case 12:
return "December";
default: ;
}
}
string Dig_Day(int day)
{
switch(day)
{
case 0:
return "Sunday";
case 1:
return "Monday";
case 2:
return "Tuesday";
case 3:
return "Wednesday";
case 4:
return "Thursday";
case 5:
return "Friday";
case 6:
return "Saturday";
default: ;
}
}
class Year
{
public:
Year()
{
this_year = 2007;
NYD = 1;
days_in_year = 365;
}
Year(int year)
{
Set_Year(year);
}
int Get_year()
{
return this_year;
}
int Get_NYD()
{
return NYD;
}
int Get_DsIY()
{
return days_in_year;
}
void Set_Year(int year)
{
this_year = year;
NYD = Nyd(year);
days_in_year = Days_In_Year(year);
}
~Year(){}
private:
int this_year;
int NYD;
int days_in_year;
};
class Month : public Year
{
public:
Month() : Year()
{
this_mon = 1;
days_in_mon = Days_In_Mon(Get_year(),1);
start_day = Start_Day(Get_year(),Get_NYD(),1);
}
Month(int year,int mon)
{
Set_Mon(year,mon);
}
int Get_Mon()
{
return this_mon;
}
int Get_Days()
{
return days_in_mon;
}
int Get_sd()
{
return start_day;
}
void Set_Mon(int year,int mon)
{
Set_Year(year);
this_mon = mon;
days_in_mon = Days_In_Mon(year,mon);
start_day = Start_Day(year,Get_NYD(),mon);
}
~Month(){}
private:
int this_mon;
int days_in_mon;
int start_day;
};
class Date : public Month
{
public:
Date() : Month()
{
this_date = 1;
}
Date(int date,int year,int mon) : Month(year,mon)
{
this_date = date;
}
void Set_Date(int year,int mon,int date)
{
Set_Mon(year,mon);
this_date = date;
}
int Get_date()
{
return this_date;
}
void Print_A_Mon(bool print_all = false)
{
int i;
string str = " ";
if(print_all == false)
{
cout endl;
cout " *********************************" endl;
cout " *********** YEAR " setw(4) Get_year() " ***********" endl;
}
cout " *********************************" endl;
cout " ********* " setw(10) Dig_Mon(Get_Mon()) " ************" endl;
cout " *********************************" endl;
cout " Sun Mon Tue Wed Thu Fri Sat" endl;
for(i = 0;i Get_sd();i++)
cout str;
for(int d = 1;d = Get_Days();d++)
{
i++;
cout setw(5) d;
if(i == 7)
{
cout endl;
i = 0;
}
}
cout endl endl;
}
void PrintAll()
{
cout " *********************************" endl;
cout " ***** Calendar for " Get_year() " *********" endl;
cout " *********************************" endl endl;
for(int i = 0;i 12;i++)
{
Set_Mon(Get_year(),i+1);
Print_A_Mon(true);
}
}
//某天是一年中的第幾天
int Day_Pos()
{
int day_pos = 0;
for(int i = 0;i Get_Mon()-1;i++)
{
Set_Date(Get_year(),Get_Mon(),this_date);
day_pos += Get_Days();
}
day_pos += this_date;
return day_pos;
}
int Days_Between(Date ob2)
{
int days_between = 0;
for(int i = Get_year();i ob2.Get_year();i++)
days_between += Days_In_Year(i);
days_between += ob2.Day_Pos();
days_between -= Day_Pos();
return days_between;
}
string What_Day()
{
int day_in_week;
day_in_week = (this_date - 1) % 7 + Get_sd();
if(day_in_week 6)
day_in_week -= 7;
return Dig_Day(day_in_week);
}
~Date(){}
private:
int this_date;
};
#endif
使用Java中的Date和Calendar類2008-05-25 21:13Java 語言的Calendar(日歷),Date(日期), 和DateFormat(日期格式)組成了Java標(biāo)準(zhǔn)的一個(gè)基本但是非常重要的部分. 日期是商業(yè)邏輯計(jì)算一個(gè)關(guān)鍵的部分. 所有的開發(fā)者都應(yīng)該能夠計(jì)算未來的日期, 定制日期的顯示格式, 并將文本數(shù)據(jù)解析成日期對象. 我們寫了兩篇文章, 這是第一篇, 我們將大概的學(xué)習(xí)日期, 日期格式, 日期的解析和日期的計(jì)算.
我們將討論下面的類:
1、具體類(和抽象類相對)java.util.Date
2、抽象類java.text.DateFormat 和它的一個(gè)具體子類,java.text.SimpleDateFormat
3、抽象類java.util.Calendar 和它的一個(gè)具體子類,java.util.GregorianCalendar
具體類可以被實(shí)例化, 但是抽象類卻不能. 你首先必須實(shí)現(xiàn)抽象類的一個(gè)具體子類.
Date 類從Java 開發(fā)包(JDK) 1.0 就開始進(jìn)化, 當(dāng)時(shí)它只包含了幾個(gè)取得或者設(shè)置一個(gè)日期數(shù)據(jù)的各個(gè)部分的方法, 比如說月, 日, 和年. 這些方法現(xiàn)在遭到了批評并且已經(jīng)被轉(zhuǎn)移到了Calendar類里去了, 我們將在本文中進(jìn)一步討論它. 這種改進(jìn)旨在更好的處理日期數(shù)據(jù)的國際化格式. 就象在JDK 1.1中一樣, Date 類實(shí)際上只是一個(gè)包裹類, 它包含的是一個(gè)長整型數(shù)據(jù), 表示的是從GMT(格林尼治標(biāo)準(zhǔn)時(shí)間)1970年, 1 月 1日00:00:00這一刻之前或者是之后經(jīng)歷的毫秒數(shù).
一、創(chuàng)建一個(gè)日期對象
讓我們看一個(gè)使用系統(tǒng)的當(dāng)前日期和時(shí)間創(chuàng)建一個(gè)日期對象并返回一個(gè)長整數(shù)的簡單例子. 這個(gè)時(shí)間通常被稱為Java 虛擬機(jī)(JVM)主機(jī)環(huán)境的系統(tǒng)時(shí)間.
import java.util.Date;
public class DateExample1 {
public static void main(String[] args) {
// Get the system date/time
Date date = new Date();
System.out.println(date.getTime());
}
}
在星期六, 2001年9月29日, 下午大約是6:50的樣子, 上面的例子在系統(tǒng)輸出設(shè)備上顯示的結(jié)果是 1001803809710. 在這個(gè)例子中,值得注意的是我們使用了Date 構(gòu)造函數(shù)創(chuàng)建一個(gè)日期對象, 這個(gè)構(gòu)造函數(shù)沒有接受任何參數(shù). 而這個(gè)構(gòu)造函數(shù)在內(nèi)部使用了System.currentTimeMillis() 方法來從系統(tǒng)獲取日期.
那么, 現(xiàn)在我們已經(jīng)知道了如何獲取從1970年1月1日開始經(jīng)歷的毫秒數(shù)了. 我們?nèi)绾尾拍芤砸环N用戶明白的格式來顯示這個(gè)日期呢? 在這里類java.text.SimpleDateFormat 和它的抽象基類 java.text.DateFormat 就派得上用場了.
二、日期數(shù)據(jù)的定制格式
假如我們希望定制日期數(shù)據(jù)的格式, 比方星期六-9月-29日-2001年. 下面的例子展示了如何完成這個(gè)工作:
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateExample2 {
public static void main(String[] args) {
SimpleDateFormat bartDateFormat =
new SimpleDateFormat("EEEE-MMMM-dd-yyyy");
Date date = new Date();
System.out.println(bartDateFormat.format(date));
}
}
只要通過向SimpleDateFormat 的構(gòu)造函數(shù)傳遞格式字符串"EEE-MMMM-dd-yyyy", 我們就能夠指明自己想要的格式. 你應(yīng)該可以看見, 格式字符串中的ASCII 字符告訴格式化函數(shù)下面顯示日期數(shù)據(jù)的哪一個(gè)部分. EEEE是星期, MMMM是月, dd是日, yyyy是年. 字符的個(gè)數(shù)決定了日期是如何格式化的.傳遞"EE-MM-dd-yy"會顯示 Sat-09-29-01. 請察看Sun 公司的Web 站點(diǎn)獲取日期格式化選項(xiàng)的完整的指示.
三、將文本數(shù)據(jù)解析成日期對象
假設(shè)我們有一個(gè)文本字符串包含了一個(gè)格式化了的日期對象, 而我們希望解析這個(gè)字符串并從文本日期數(shù)據(jù)創(chuàng)建一個(gè)日期對象. 我們將再次以格式化字符串"MM-dd-yyyy" 調(diào)用SimpleDateFormat類, 但是這一次, 我們使用格式化解析而不是生成一個(gè)文本日期數(shù)據(jù). 我們的例子, 顯示在下面, 將解析文本字符串"9-29-2001"并創(chuàng)建一個(gè)值為001736000000 的日期對象.
例子程序:
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateExample3 {
public static void main(String[] args) {
// Create a date formatter that can parse dates of
// the form MM-dd-yyyy.
SimpleDateFormat bartDateFormat =
new SimpleDateFormat("MM-dd-yyyy");
// Create a string containing a text date to be parsed.
String dateStringToParse = "9-29-2001";
try {
// Parse the text version of the date.
// We have to perform the parse method in a
// try-catch construct in case dateStringToParse
// does not contain a date in the format we are expecting.
Date date = bartDateFormat.parse(dateStringToParse);
// Now send the parsed date as a long value
// to the system output.
System.out.println(date.getTime());
}
catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}
五、使用標(biāo)準(zhǔn)的日期格式化過程
既然我們已經(jīng)可以生成和解析定制的日期格式了, 讓我們來看一看如何使用內(nèi)建的格式化過程. 方法 DateFormat.getDateTimeInstance() 讓我們得以用幾種不同的方法獲得標(biāo)準(zhǔn)的日期格式化過程. 在下面的例子中, 我們獲取了四個(gè)內(nèi)建的日期格式化過程. 它們包括一個(gè)短的, 中等的, 長的, 和完整的日期格式.
import java.text.DateFormat;
import java.util.Date;
public class DateExample4 {
public static void main(String[] args) {
Date date = new Date();
DateFormat shortDateFormat =
DateFormat.getDateTimeInstance(
DateFormat.SHORT,
DateFormat.SHORT);
DateFormat mediumDateFormat =
DateFormat.getDateTimeInstance(
DateFormat.MEDIUM,
DateFormat.MEDIUM);
DateFormat longDateFormat =
DateFormat.getDateTimeInstance(
DateFormat.LONG,
DateFormat.LONG);
DateFormat fullDateFormat =
DateFormat.getDateTimeInstance(
DateFormat.FULL,
DateFormat.FULL);
System.out.println(shortDateFormat.format(date));
System.out.println(mediumDateFormat.format(date));
System.out.println(longDateFormat.format(date));
System.out.println(fullDateFormat.format(date));
}
}
注意我們在對 getDateTimeInstance的每次調(diào)用中都傳遞了兩個(gè)值. 第一個(gè)參數(shù)是日期風(fēng)格, 而第二個(gè)參數(shù)是時(shí)間風(fēng)格. 它們都是基本數(shù)據(jù)類型int(整型). 考慮到可讀性, 我們使用了DateFormat 類提供的常量: SHORT, MEDIUM, LONG, 和 FULL. 要知道獲取時(shí)間和日期格式化過程的更多的方法和選項(xiàng), 請看Sun 公司W(wǎng)eb 站點(diǎn)上的解釋.
運(yùn)行我們的例子程序的時(shí)候, 它將向標(biāo)準(zhǔn)輸出設(shè)備輸出下面的內(nèi)容:
9/29/01 8:44 PM
Sep 29, 2001 8:44:45 PM
September 29, 2001 8:44:45 PM EDT
Saturday, September 29, 2001 8:44:45 PM EDT
六、Calendar 類
我們現(xiàn)在已經(jīng)能夠格式化并創(chuàng)建一個(gè)日期對象了, 但是我們?nèi)绾尾拍茉O(shè)置和獲取日期數(shù)據(jù)的特定部分呢, 比如說小時(shí), 日, 或者分鐘? 我們又如何在日期的這些部分加上或者減去值呢? 答案是使用Calendar 類. 就如我們前面提到的那樣, Calendar 類中的方法替代了Date 類中被人唾罵的方法.
假設(shè)你想要設(shè)置, 獲取, 和操縱一個(gè)日期對象的各個(gè)部分, 比方一個(gè)月的一天或者是一個(gè)星期的一天. 為了演示這個(gè)過程, 我們將使用具體的子類 java.util.GregorianCalendar. 考慮下面的例子, 它計(jì)算得到下面的第十個(gè)星期五是13號.
import java.util.GregorianCalendar;
import java.util.Date;
import java.text.DateFormat;
public class DateExample5 {
public static void main(String[] args) {
DateFormat dateFormat =
DateFormat.getDateInstance(DateFormat.FULL);
// Create our Gregorian Calendar.
GregorianCalendar cal = new GregorianCalendar();
// Set the date and time of our calendar
// to the system's date and time
cal.setTime(new Date());
System.out.println("System Date: " +
dateFormat.format(cal.getTime()));
// Set the day of week to FRIDAY
cal.set(GregorianCalendar.DAY_OF_WEEK,
GregorianCalendar.FRIDAY);
System.out.println("After Setting Day of Week to Friday: " +
dateFormat.format(cal.getTime()));
int friday13Counter = 0;
while (friday13Counter = 10) {
// Go to the next Friday by adding 7 days.
cal.add(GregorianCalendar.DAY_OF_MONTH, 7);
// If the day of month is 13 we have
// another Friday the 13th.
if (cal.get(GregorianCalendar.DAY_OF_MONTH) == 13) {
friday13Counter++;
System.out.println(dateFormat.format(cal.getTime()));
}
}
}
}
在這個(gè)例子中我們作了有趣的函數(shù)調(diào)用:
cal.set(GregorianCalendar.DAY_OF_WEEK,
GregorianCalendar.FRIDAY);
和:
cal.add(GregorianCalendar.DAY_OF_MONTH, 7);
set 方法能夠讓我們通過簡單的設(shè)置星期中的哪一天這個(gè)域來將我們的時(shí)間調(diào)整為星期五. 注意到這里我們使用了常量 DAY_OF_WEEK 和 FRIDAY來增強(qiáng)代碼的可讀性. add 方法讓我們能夠在日期上加上數(shù)值. 潤年的所有復(fù)雜的計(jì)算都由這個(gè)方法自動處理.
我們這個(gè)例子的輸出結(jié)果是:
System Date: Saturday, September 29, 2001
當(dāng)我們將它設(shè)置成星期五以后就成了: Friday, September 28, 2001
Friday, September 13, 2002
Friday, December 13, 2002
Friday, June 13, 2003
Friday, February 13, 2004
Friday, August 13, 2004
Friday, May 13, 2005
Friday, January 13, 2006
Friday, October 13, 2006
Friday, April 13, 2007
Friday, July 13, 2007
Friday, June 13, 2008
參考資料:
《Smart Calendar(日程管理軟件) V3.2.1》百度網(wǎng)盤免費(fèi)資源下載
鏈接:
提取碼:yffu ? ?
《Smart Calendar(日程管理軟件) V3.2.1》語言:英文軟件,大小:35.59MB,類別:系統(tǒng)工具
本文標(biāo)題:go語言日歷 go語言誕生時(shí)間
地址分享:http://chinadenli.net/article36/dodpgsg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、微信小程序、企業(yè)建站、靜態(tài)網(wǎng)站、網(wǎng)頁設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)