




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、學(xué)號(hào)2012-2013學(xué)年 第二學(xué)期高級(jí)語言程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告題目:備忘錄專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)班級(jí):姓名:指導(dǎo)教師:成績(jī):計(jì)算機(jī)與信息工程系年月日0 / 33目錄1設(shè)計(jì)內(nèi)容及要求.21.1設(shè)計(jì)內(nèi)容.21.2設(shè)計(jì)任務(wù)及具體要求.22概要設(shè)計(jì).32.1該系統(tǒng)的功能簡(jiǎn)介.32.2 總體程序框圖.32.3各個(gè)模塊之間的主要關(guān)系.43 3設(shè)計(jì)過程或程序代碼.53.1各個(gè)模塊的程序流程圖及運(yùn)行界面.53.2對(duì)關(guān)鍵代碼加以分析說明.74程序調(diào)試分析.135小結(jié).14致謝.15參考文獻(xiàn).16附:源程序.301 設(shè)計(jì)內(nèi)容及要求1.1設(shè)計(jì)內(nèi)容備忘錄主要根據(jù)課程設(shè)計(jì)要求進(jìn)行設(shè)計(jì),能夠進(jìn)行個(gè)人的事件記錄,可以將程
2、序使用者的時(shí)間安排,重要事件,以及個(gè)人行程等事件做出具體詳細(xì)的記述,并能夠使使用者在程序上完成查看時(shí)間的功能,足以使得使用者避免忘記一些重要事件,也可以為使用者帶來一些便利,幫助使用者節(jié)省了時(shí)間。電子備忘錄相較于筆記本,其最大的好處在于可以不受紙張的限制,并切實(shí)的使用者可以在短時(shí)間內(nèi)記述大量事件;查詢時(shí)也可以節(jié)省大量的時(shí)間,使得使用者可以減短查詢時(shí)間,方便快捷。同時(shí),使用電子備忘錄也是一種現(xiàn)代化的代表,將電子科技應(yīng)用與人們的日常生活中,達(dá)到現(xiàn)代實(shí)惠的先進(jìn)水平。該系統(tǒng)功能主要包括三大模塊:1) 備忘錄的信息錄入 2)備忘錄信息的查看 3)進(jìn)出備忘錄系統(tǒng)1.2設(shè)計(jì)任務(wù)及具體要求主要利用C語言的文件
3、操作能力設(shè)計(jì)開發(fā)一個(gè)小型的備忘錄系統(tǒng),至少具有如下功能:備忘錄的信息錄入,備忘錄的信息查詢和退出備忘錄系統(tǒng)。操作界面要符合用戶的一般習(xí)慣,圖形或文本界面都可以。要求:利用C語言編寫一個(gè)備忘錄程序,能實(shí)現(xiàn)一些基本的操作,達(dá)到一些基本的信息錄入,查詢,提醒以及編寫等功能,能根據(jù)課程設(shè)計(jì)的要求,查閱相關(guān)文獻(xiàn),為完成設(shè)計(jì)準(zhǔn)備必要的知識(shí); 提高自身用高級(jí)語言進(jìn)行程序設(shè)計(jì)的能力,重點(diǎn)提高用C語言進(jìn)行文件操作和繪圖應(yīng)用的編程技術(shù)水平;初步了解軟件開發(fā)的一般方法和步驟; 提高撰寫技術(shù)文檔的能力。并且對(duì)C語言的一些基本語句以及功能有一些更加深刻的認(rèn)識(shí)和理解。能夠利用C語言解決一些生活中的基本問題。2 概要設(shè)計(jì)2
4、.1系統(tǒng)的功能簡(jiǎn)介該系統(tǒng)的主要功能是實(shí)現(xiàn)重要信息的錄入,包括錄入的當(dāng)前時(shí)間,事件的重要性以及提醒時(shí)間。能夠在設(shè)定時(shí)間內(nèi)對(duì)使用者提醒,避免使用者忘記重要事件,造成不必要的麻煩。2.2 總體程序框圖備忘錄備忘錄主菜單編輯備忘錄推出備忘錄提 醒 我查詢備忘錄輸入新備忘 通過備忘時(shí)間編輯備忘通過備忘名稱編輯備忘通過備忘時(shí)間查詢備忘通過備忘名稱查詢備忘 圖2.12.3各個(gè)模塊之間的主要關(guān)系該程序的功能主要是實(shí)現(xiàn)備忘錄的錄入,能在系統(tǒng)內(nèi)對(duì)錄入的信息進(jìn)行查詢,并對(duì)相對(duì)重要的相應(yīng)信息進(jìn)行提醒。各個(gè)模塊之間的關(guān)系是相互聯(lián)系的。首先,主函數(shù)包含了所有的子函數(shù)。主函數(shù)是整個(gè)程序的核心。子函數(shù)之間也有聯(lián)系的,對(duì)重要的
5、信息查詢,必須是在信息錄入的情況下進(jìn)行的。因此對(duì)重要事件信息的錄入時(shí)非常重要的。在退出備忘錄系統(tǒng)的子函數(shù)之間是沒有多大聯(lián)系的。3設(shè)計(jì)過程或程序代碼3.1各個(gè)模塊的程序流程圖備忘錄開始 main()函數(shù)開始執(zhí)行顯示備忘錄主菜單判斷 case 5case 4case 3case 2case 1調(diào)用input_memo()函數(shù)實(shí)現(xiàn)個(gè)人備忘輸入功能調(diào)用exit(0)退出程序調(diào)用search_memo()函數(shù)顯示個(gè)人備忘查詢功能菜單調(diào)用modify_memo()函數(shù)顯示個(gè)人備忘修改功能菜單調(diào)用remind_me()函數(shù)顯示個(gè)人備忘提醒功能菜單判斷 判斷 case 2case 2case 1case 1調(diào)
6、用modify_by_event_date() 函數(shù)實(shí)現(xiàn)個(gè)人備忘的時(shí)間時(shí)間功能調(diào)用modify_ name() 函數(shù)實(shí)現(xiàn)個(gè)人備忘的名稱修改功能調(diào)用search_by_ event_date() 函數(shù)實(shí)現(xiàn)個(gè)人備忘的時(shí)間查詢功能調(diào)用search_by _name() 函數(shù)實(shí)現(xiàn)個(gè)人備忘的名稱查詢功能 圖3.13.2對(duì)關(guān)鍵代碼加以分析說明1 ) 函數(shù) 名稱:main() 函數(shù) 功能:實(shí)現(xiàn)個(gè)人備忘錄的主菜單顯示功能和各個(gè)函數(shù)功能的調(diào)用功能 函數(shù) 參數(shù):void 函數(shù)返回值:void2 ) 函數(shù) 名稱:input_memo()函數(shù) 功能:實(shí)現(xiàn)個(gè)人備忘內(nèi)容的輸入功能函數(shù) 參數(shù):void函數(shù)返回值:void3
7、 ) 函數(shù) 名稱:search_memo()函數(shù) 功能:實(shí)現(xiàn)個(gè)人備忘內(nèi)容查詢功能的菜單函數(shù) 參數(shù):void函數(shù)返回值:void4 ) 函數(shù) 名稱:search_by_name() 函數(shù) 功能:實(shí)現(xiàn)個(gè)人備忘內(nèi)容通過備忘名稱查詢的功能 函數(shù) 參數(shù):void 函數(shù)返回值:void5 ) 函數(shù) 名稱:search_by_event_date()函數(shù) 功能:實(shí)現(xiàn)個(gè)人備忘內(nèi)容通過備忘時(shí)間查詢的功能函數(shù) 參數(shù):void函數(shù)返回值:void6 ) 函數(shù) 名稱:modify_memo() 函數(shù) 功能:實(shí)現(xiàn)個(gè)人備忘內(nèi)容修改功能的菜單 函數(shù) 參數(shù):void 函數(shù)返回值:void7 ) 函數(shù) 名稱:modify_by
8、_name() 函數(shù) 功能:實(shí)現(xiàn)個(gè)人備忘內(nèi)容通過備忘名稱修改的功能 函數(shù) 參數(shù):void 函數(shù)返回值:void8 ) 函數(shù) 名稱:modify_by_event_date() 函數(shù) 功能:實(shí)現(xiàn)個(gè)人備忘內(nèi)容通過備忘時(shí)間修改的功能函數(shù) 參數(shù):void函數(shù)返回值:void9 ) 函數(shù) 名稱:remind_me()函數(shù) 功能:實(shí)現(xiàn)個(gè)人備忘的提醒功能函數(shù) 參數(shù):void函數(shù)返回值:void4設(shè)計(jì)結(jié)果與分析1) 運(yùn) 行 備 忘 錄 程 序運(yùn)行程序,進(jìn)入備忘錄系統(tǒng)的主菜單,按照系統(tǒng)提示進(jìn)行操作,完成系統(tǒng)的操作圖4.1 2) 輸入數(shù)字進(jìn)行菜功能的選擇,輸入數(shù)字1,執(zhí)行輸入新備忘的功能,調(diào)用輸入新備忘的函數(shù)顯示
9、結(jié)果如下:圖4.23)輸入數(shù)字2,執(zhí)行個(gè)人備忘的查詢功能,調(diào)用備忘查詢函數(shù),顯示備忘查詢的功能菜單。結(jié)果如下:圖4.3 4)輸入數(shù)字1,執(zhí)行通過個(gè)人備忘的名稱查詢功能,調(diào)用備忘名稱查詢函數(shù),顯示通過備忘名稱查詢的結(jié)果,如下:圖4.45)輸入數(shù)字2,執(zhí)行通過個(gè)人備忘的時(shí)間查詢功能,調(diào)用備忘時(shí)間查詢函數(shù),顯示通過備忘時(shí)間查詢的結(jié)果,如下:圖4.5 6)返回主菜單,輸入數(shù)字3,執(zhí)行個(gè)人備忘的修改功能,調(diào)用備忘修改函數(shù),顯示備忘修改的功能菜單。結(jié)果如下: 圖4.67)輸入數(shù)字1,執(zhí)行通過個(gè)人備忘的名稱修改功能,調(diào)用備忘名稱修改函數(shù),顯示通過備忘名稱修改的結(jié)果,如下: 圖4.78)輸入數(shù)字2,執(zhí)行通過個(gè)
10、人備忘的時(shí)間修改功能,調(diào)用備忘時(shí)間修改函數(shù),顯示通過備忘時(shí)間修改的結(jié)果,如下:圖4.89)返回主菜單,輸入數(shù)字4,執(zhí)行個(gè)人備忘的提醒功能,調(diào)用備忘提醒函數(shù),顯示備忘提醒的功能菜單。結(jié)果如下:圖4.9 當(dāng)把程序?qū)懞貌⑦M(jìn)行調(diào)試時(shí),并不是一帆風(fēng)順的,總會(huì)遇到很多在調(diào)試時(shí)遇到的錯(cuò)誤。(1)首先在定義函數(shù)時(shí),不能輸入漢字。否則會(huì)程序會(huì)顯示錯(cuò)誤。(2)如果要調(diào)用查詢函數(shù),增詞函數(shù),刪除函數(shù),修改函數(shù)等要在主函數(shù)前面進(jìn)行申明,否則會(huì)顯示警告。(3)如果程序在運(yùn)行的過程中,對(duì)于一個(gè)循環(huán)語句,如果你返回的值始終是真的,那么程序?qū)⑦M(jìn)如死循環(huán)。(4)對(duì)應(yīng)該有花括弧的復(fù)合語句,忘記加花括弧。 (5)所調(diào)用的函數(shù)在調(diào)用
11、語句之后才定義,而又在調(diào)用前未加說明。5 小 結(jié) 在這次的課程設(shè)計(jì)中,我利用C語言完成了一個(gè)小型的備忘錄系統(tǒng),能夠?qū)π畔⑦M(jìn)行錄入與查詢,并能夠提醒用戶。通過實(shí)驗(yàn),基本上掌握了C語言的基本用法與功能。對(duì)于所學(xué)知識(shí)有了更深的認(rèn)識(shí)。 在本課程設(shè)計(jì)的設(shè)計(jì)過程中,我剛開始感覺到有點(diǎn)頭痛。要通過一學(xué)期C語言的學(xué)習(xí)后將所學(xué)知識(shí)運(yùn)用起來有點(diǎn)困難,但回過頭來再去看教課書,對(duì)于這些知識(shí)點(diǎn)有關(guān)的背景,概念和解決方案更進(jìn)一步的理解,感覺也不是很難。另外我還體會(huì)了從事C語言課程設(shè)計(jì)工作需要特別謹(jǐn)慎認(rèn)真地態(tài)度和作風(fēng),一點(diǎn)都不能馬虎。每個(gè)細(xì)微的細(xì)節(jié)都必須十分注意,如果不認(rèn)真思考,就會(huì)出現(xiàn)或大或小的錯(cuò)誤。如果把早期的錯(cuò)誤隱藏
12、下來,對(duì)后面的工作影響就會(huì)很大,甚至有時(shí)會(huì)推倒很多前面做的工作。有時(shí)候,我自己覺得我寫的程序非常正確,但是就是編譯通不過,在查找錯(cuò)誤的過程中,面臨著否認(rèn)自己的過程,非常的痛苦,而且由于自己的經(jīng)驗(yàn)及各方面的能力的不足,所以進(jìn)展的速度非常的緩慢,往往幾天的時(shí)間沒有一點(diǎn)進(jìn)展。這時(shí)候,我一般是先自己通過書本,手冊(cè)和資料找解決辦法,實(shí)在沒轍才向老師同學(xué)請(qǐng)教。 在開始編寫程序的時(shí)候,我看到別人的程序功能非常的詳細(xì),而且界面非常漂亮,總是希望自己的程序也非常的完善,但是,發(fā)現(xiàn)編一個(gè)好的程序不是一蹴而就的事情,需要長(zhǎng)時(shí)間的積累和經(jīng)驗(yàn)。在反反復(fù)復(fù)的學(xué)習(xí)中,我終于作出一個(gè)簡(jiǎn)單的程序,雖然這個(gè)程序的功能非常簡(jiǎn)單,而
13、且在實(shí)際運(yùn)用中還有些不足,因?yàn)楣べY的的內(nèi)容非常豐富,我涉及到的僅僅是工資管理的一部分簡(jiǎn)單內(nèi)容,離實(shí)際的客戶需求肯定還有差距。由于我的知識(shí)淺薄,經(jīng)驗(yàn)不足及閱歷頗淺,在該系統(tǒng)的設(shè)計(jì)方面還有很多不足,比如功能過少,界面不醒目等問題,我會(huì)在以后的學(xué)習(xí)過程中,根據(jù)具體要求不斷的修改、完善,爭(zhēng)取使系統(tǒng)慢慢趨于完美。致謝在這次C語言課程設(shè)計(jì)中,我遇到了一些困難,因?yàn)橥ㄟ^書本以及自身的不足所難以解決。所以我想任課老師進(jìn)行了詢問。他給予了我一些代碼以及注意事項(xiàng)上的幫助,使我能夠完成這次課程設(shè)計(jì)。在此,我對(duì)他們表示感謝!感謝他們?cè)谖颐鎸?duì)困難時(shí)給了我?guī)椭椭С?。也感謝那些給我?guī)椭乃型瑢W(xué)!參考文獻(xiàn)1譚浩強(qiáng)著.C程
14、序設(shè)計(jì).清華大學(xué)出版社,1999年第二版2譚浩強(qiáng),張基溫,唐永炎編著.C語言程序設(shè)計(jì).高等教育出版社,19923譚浩強(qiáng)編著.QBASIC語言教程.電子工業(yè)出版社,19974譚浩強(qiáng).C程序設(shè)計(jì)M.清華大學(xué)出版社,20055Herbert Schildt著.戴健鵬譯.C語言大全.電子工業(yè)出版社,1994年第二版6美SCHILDTH.C語言大全M.王子恢等譯.電子工業(yè)出版社,2001源程序#include<stdio.h> #include<string.h>#include<stdlib.h> #define Namelength 60 #define Date
15、length 50 #define Contentlength 800 struct memo char nameNamelength; char event_dateDatelength; char contentContentlength; char remind_dateDatelength; ;void input_memo(); void search_memo();void modify_memo();void modify_name();void modify_by_event_date();void remind_me();void remind();void search_b
16、y_name();void search_by_event_date();void main()FILE *fp; int number_menu; char a;printf("nn*-*-*-* 歡 迎 使 用 備 忘 錄 *-*-*-*n"); loop:printf("nn*-*-*-* 備 忘 錄 主 菜 單 *-*-*-*n"); printf(" ="); printf("n 1 輸 入 新 備 忘; "); printf("n "); printf("n 2 查 詢 備
17、 忘; "); printf("n "); printf("n 3 編 輯 備 忘; "); printf("n "); printf("n 4 提 醒 我; ");printf("n "); printf("n 5 退 出 備 忘; n"); printf(" ="); printf("n請(qǐng) 輸 入 菜 單 功 能 的 數(shù) 字:"); a = getch(); if(a>='1'&&a&
18、lt;='5') printf("nn您 輸 入 的 數(shù) 字 是 : %c",a); number_menu = (a - '0'); else printf("nn您 輸 入 的 數(shù) 字 是 : %c",a); printf("nn對(duì) 不 起,您 的 輸 入 有 誤,請(qǐng) 輸 入 正 確 的 菜 單 功 能 數(shù) 字,謝 謝。n"); goto loop; switch(number_menu) case 1:input_memo(); goto loop; case 2:search_memo(); g
19、oto loop; case 3:modify_memo(); goto loop; case 4:remind_me(); goto loop; case 5:exit(0);default:printf("n對(duì) 不 起,您 的 輸 入 有 誤,請(qǐng) 輸 入 正 確 的 菜 單 功 能 數(shù) 字,謝 謝。n"); goto loop; void input_memo() struct memo m;FILE *fp;if(fp=fopen("memo","a")=NULL)printf("對(duì) 不 起,無 法 打 開 文 件!n
20、");exit(1);printf("nn請(qǐng) 輸 入 新 備 忘。 (如 果 您 想 返 回 上 級(jí) 菜 單,請(qǐng) 輸 入 0。):n");printf("n請(qǐng) 輸 入 新 的 備 忘 名 稱:");scanf("%s",);while(strcmp(,"0")printf("n請(qǐng) 輸 入 新 的 備 忘 時(shí) 間:");scanf("%s",m.event_date);printf("n請(qǐng) 輸 入 新 的 備 忘 內(nèi) 容:"
21、);scanf("%s",m.content);printf("n請(qǐng) 輸 入 新 的 備 忘 提 醒 時(shí) 間:");scanf("%s",m.remind_date);fprintf(fp,"name:%snevent_date:%sncontent:%snremind_date:%sn", ,m.event_date,m.content,m.remind_date);printf("=");printf("n您 輸 入 的 新 備 忘 是:nn");printf
22、("名 稱:%snn",);printf("備 忘 時(shí) 間:%snn",m.event_date);printf("備 忘 內(nèi) 容:%snn",m.content);printf("提 醒 時(shí) 間:%snn",m.remind_date);printf("=");printf("n恭 喜 您,新 備 忘 已 經(jīng) 輸 入 成 功!n");printf("n請(qǐng) 輸 入 另 一 個(gè) 新 備 忘! (如 果 您 想 返 回 上 級(jí) 菜 單,請(qǐng) 輸 入 0。):n
23、");printf("n請(qǐng) 輸 入 新 的 備 忘 名 稱:");scanf("%s",);fclose(fp); void search_memo() int sm; char a; loop:printf("nn*-*-*-*-* 查 詢 備 忘 *-*-*-*-*n"); printf("n1 通 過 備 忘 名 稱 查 詢;n"); printf("n2 通 過 備 忘 時(shí) 間 查 詢;n");printf("n3 返 回 上 級(jí) 菜 單;nn"
24、); printf("n請(qǐng) 輸 入 菜 單 上 的 數(shù) 字 :");a = getch(); if(a>='1'&&a<='3') printf("nn您 輸 入 的 數(shù) 字 是 : %c",a); printf("n"); sm = (a - '0'); else printf("nn您 輸 入 的 數(shù) 字 是 : %c",a); printf("nn對(duì) 不 起,您 的 輸 入 有 誤,請(qǐng) 輸 入 正 確 的 菜 單 功 能 數(shù)
25、 字,謝 謝。n"); goto loop; switch(sm)case 1:search_by_name(); goto loop; case 2:search_by_event_date(); goto loop; case 3:break;default:printf("n對(duì) 不 起,您 的 輸 入 有 誤,請(qǐng) 輸 入 正 確 的 菜 單 功 能 數(shù) 字,謝 謝。nn");goto loop; void search_by_name() struct memo i;FILE *fp;int j=0, k=0, l=0;char nameNamelength
26、='n','a','m','e',':'char new_nameNamelength;if(fp=fopen("memo","r")=NULL)printf("對(duì) 不 起,無 法 打 開 文 件!n");exit(1);printf("n請(qǐng) 輸 入 需 要 查 詢 的 備 忘 名 稱 ( 返 回 上 級(jí) 菜 單,請(qǐng) 輸 入 0 ):");scanf("%s",new_name);if (new_name != 0)
27、for(j=0; j<sizeof(new_name); )if(new_namej='n')break;else j+;for(l=0; l<j; l+)name5+l=new_namel;while(! feof(fp)fscanf(fp,"%s%s%s%sn",,i.event_date,i.content,i.remind_date);if(!strcmp(name,)printf("n已 經(jīng) 查 到,結(jié) 果 如 下:n");printf("=");printf("
28、n您 查 詢 的 結(jié) 果 是 :nn");printf("%snn",);printf("%snn",i.event_date);printf("%snn",i.content);printf("%snn",i.remind_date);printf("=");k=1;break; if(!k)printf("n對(duì) 不 起,沒 有 查 詢 結(jié) 果!請(qǐng) 重 新 輸 入,謝 謝。n");fclose(fp);void search_by_event_date
29、() struct memo i;FILE *fp;int j=0,k=0,l=0; char event_dateDatelength='e','v','e','n','t','_','d','a','t','e',':'char new_event_dateDatelength;if(fp=fopen("memo","r+")=NULL)printf("n對(duì) 不 起,
30、無 法 打 開 文 件!n");exit(1);printf("n請(qǐng) 輸 入 需 要 查 詢 的 備 忘 時(shí) 間 (返 回 上 級(jí) 菜 單,請(qǐng) 輸 入 0 ):");scanf("%s",new_event_date);if (new_event_date != 0)for(j=0;j<sizeof(new_event_date);)if(new_event_datej='n')break;else j+;for(l=0; l<j; l+)event_date11+l=new_event_datel; while(!
31、feof(fp)fscanf(fp,"%s%s%s%s",,i.event_date,i.content,i.remind_date);if(!strcmp(event_date,i.event_date)printf("n已 經(jīng) 查 到,結(jié) 果 如 下:n");printf("=");printf("n您 查 詢 的 結(jié) 果 是 :nn");printf("%snn",);printf("%snn",i.event_date);printf(&quo
32、t;%snn",i.content);printf("%snn",i.remind_date);printf("=");k=1;break;if(!k) printf("n對(duì) 不 起,沒 有 查 詢 結(jié) 果!請(qǐng) 重 新 輸 入,謝 謝。n");fclose(fp);void modify_memo() int mb;char a;loop:printf("nn*-*-*-* 編 輯 備 忘 *-*-*-*n"); printf("n1 通 過 備 忘 名 稱 編 輯;n"); prin
33、tf("n2 通 過 備 忘 時(shí) 間 編 輯;n"); printf("n3 返 回 上 級(jí) 菜 單;n"); printf("n請(qǐng) 輸 入 菜 單 上 的 數(shù) 字 :"); a = getch(); if(a>='1'&&a<='3') printf("nn您 輸 入 的 數(shù) 字 是 :%cn",a); mb = (a - '0'); else printf("nn您 輸 入 的 數(shù) 字 是 :%c",a); prin
34、tf("nn對(duì) 不 起,您 的 輸 入 有 誤,請(qǐng) 輸 入 正 確 的 菜 單 功 能 數(shù) 字,謝 謝。n"); goto loop; switch(mb)case 1:modify_name(); goto loop;case 2:modify_by_event_date(); goto loop;case 3:break;default:printf("n對(duì) 不 起,您 的 輸 入 有 誤,請(qǐng) 輸 入 正 確 的 菜 單 功 能 數(shù) 字,謝 謝。nn"); goto loop;void modify_name() struct memo i;FILE
35、 *fp;int j=0,k=0,l=0;long offset; char nameNamelength='n','a','m','e',':'char new_nameNamelength;printf("n請(qǐng) 輸 入 您 要 修 改 的 備 忘 名 稱:");scanf("%s",new_name);for(j=0;j<sizeof(new_name);)if(new_namej='n')break;else j+;for(l=0; l<j;
36、 l+)name5+l=new_namel; if(fp=fopen("memo","r+")=NULL)printf("n對(duì) 不 起,無 法 打 開 文 件!n");exit(1);while(!feof(fp)offset=ftell(fp);fscanf(fp,"%s%s%s%s",,i.event_date,i.content,i.remind_date);if(!strcmp(name,)k=1;break;if(k)printf("n已 經(jīng) 查 到,結(jié) 果 如 下:n&
37、quot;);printf("=");printf("n您 查 詢 的 結(jié) 果 是 :nn");printf("%snn",);printf("%snn",i.event_date);printf("%snn",i.content);printf("%snn",i.remind_date);printf("=");printf("n請(qǐng) 輸 入 新 備 忘 n");printf("=");printf(&q
38、uot;n請(qǐng) 輸 入 新 備 忘 的 名 稱 :");scanf("%s",);printf("n請(qǐng) 輸 入 新 備 忘 的 時(shí) 間 :");scanf("%s",i.event_date);printf("n請(qǐng) 輸 入 新 備 忘 的 內(nèi) 容 :");scanf("%s",i.content);printf("n請(qǐng) 輸 入 新 備 忘 的 提 醒 時(shí) 間 :");scanf("%s",i.remind_date);fseek(fp,
39、offset,SEEK_SET);fprintf(fp,"nname:%snevent date:%sncontent:%snremind_date:%sn", ,i.event_date,i.content,i.remind_date);printf("n恭 喜 您,編 輯 成 功!n");printf("=n");elseprintf("n對(duì) 不 起,沒 有 查 詢 結(jié) 果,請(qǐng) 重 新 輸 入,謝 謝。");fclose(fp); void modify_by_event_date() struct
40、 memo i;FILE *fp;int j=0,k=0,l=0;long offset; char event_dateDatelength='e','v','e','n','t','_','d','a','t','e',':'char new_event_dateDatelength;printf("n請(qǐng) 輸 入 您 要 修 改 的 備 忘 時(shí) 間 :");scanf("%s"
41、,new_event_date);for(j=0;j<sizeof(new_event_date);)if(new_event_datej='n')break;else j+;for(l=0; l<j; l+)event_date11+l=new_event_datel;if(fp=fopen("memo","r+")=NULL)printf("n對(duì) 不 起,無 法 打 開 文 件!n");exit(1);while(!feof(fp)offset=ftell(fp);fscanf(fp,"%s%
42、s%s%s",,i.event_date,i.content,i.remind_date);if(!strcmp(event_date,i.event_date)k=1;break; if(k)printf("n已 經(jīng) 查 到,結(jié) 果 如 下:n");printf("=");printf("n您 查 詢 的 結(jié) 果 是 :nn");printf("%snn",);printf("%snn",i.event_date);printf("%snn"
43、;,i.content);printf("%snn",i.remind_date);printf("=");printf("n請(qǐng) 輸 入 新 備 忘 n");printf("=");printf("n請(qǐng) 輸 入 新 備 忘 的 名 稱 :");scanf("%s",);printf("n請(qǐng) 輸 入 新 備 忘 的 時(shí) 間 :");scanf("%s",i.event_date);printf("n請(qǐng) 輸 入 新 備 忘 的 內(nèi) 容 :");scanf("%s",i.content);printf("n請(qǐng) 輸 入 新 備 忘 的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 租賃店鋪的殘疾人士服務(wù)考核試卷
- 鑄造過程中的質(zhì)量管理方法創(chuàng)新與實(shí)踐案例分析考核試卷
- 銀礦市場(chǎng)動(dòng)態(tài)監(jiān)測(cè)與投資決策分析考核試卷
- 過敏性休克病人急救護(hù)理
- 呼吸道疾病預(yù)防及措施
- 院前急救的常見護(hù)理技術(shù)
- 機(jī)場(chǎng)應(yīng)急救援淺析課件
- 影像學(xué)呼吸系統(tǒng)概述
- 外科手部護(hù)理標(biāo)準(zhǔn)流程
- 感染控制管理規(guī)范實(shí)施框架
- 中學(xué)化學(xué)實(shí)驗(yàn)員培訓(xùn)材料
- 30題投資管理類崗位常見面試問題含HR問題考察點(diǎn)及參考回答
- 校園網(wǎng)絡(luò)運(yùn)維服務(wù)需求
- 2023調(diào)度自動(dòng)化系統(tǒng)主站信息自動(dòng)聯(lián)調(diào)技術(shù)規(guī)范
- 物流公司運(yùn)輸安全管理制度
- 三個(gè)合伙人分配合同范本
- PLC課程設(shè)計(jì)-四人搶答器
- 資產(chǎn)管理+數(shù)據(jù)資產(chǎn)確權(quán)登記導(dǎo)則(2022年)
- SL637-2023年《水力機(jī)械輔助設(shè)備系統(tǒng)安裝工程施工質(zhì)量驗(yàn)收評(píng)定標(biāo)準(zhǔn)》
- 油霧潤(rùn)滑操作規(guī)程及要求
- 漿料回收工藝及流程
評(píng)論
0/150
提交評(píng)論