![簡(jiǎn)單行編輯程序說(shuō)明書_第1頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/23/c81f7f06-c793-4c21-962a-d77f4c614641/c81f7f06-c793-4c21-962a-d77f4c6146411.gif)
![簡(jiǎn)單行編輯程序說(shuō)明書_第2頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/23/c81f7f06-c793-4c21-962a-d77f4c614641/c81f7f06-c793-4c21-962a-d77f4c6146412.gif)
![簡(jiǎn)單行編輯程序說(shuō)明書_第3頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/23/c81f7f06-c793-4c21-962a-d77f4c614641/c81f7f06-c793-4c21-962a-d77f4c6146413.gif)
![簡(jiǎn)單行編輯程序說(shuō)明書_第4頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/23/c81f7f06-c793-4c21-962a-d77f4c614641/c81f7f06-c793-4c21-962a-d77f4c6146414.gif)
![簡(jiǎn)單行編輯程序說(shuō)明書_第5頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-11/23/c81f7f06-c793-4c21-962a-d77f4c614641/c81f7f06-c793-4c21-962a-d77f4c6146415.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、摘 要文本編輯程序是利用計(jì)算機(jī)進(jìn)行文字加工的基本軟件工具,實(shí)現(xiàn)對(duì)文本文件的插入、刪除等修改操作。限制這些操作以行為單位進(jìn)行的編輯程序稱為行編輯程序。行編輯器只能從事最簡(jiǎn)單的輸入輸出。輸入、編輯、文檔顯示并不能同步地進(jìn)行。編輯的文本文件可能很大,全部讀入內(nèi)存的做法既不經(jīng)濟(jì)也不總能實(shí)現(xiàn)。一種解決辦法是逐行地編輯,任何時(shí)刻只把待編輯文件的一行放在內(nèi)存,稱為活區(qū)。允許輸入出錯(cuò)時(shí)發(fā)現(xiàn)錯(cuò)誤并及時(shí)更正。一般而言,用戶無(wú)法直接輸入文本,而只能在文本終端上通過(guò)簡(jiǎn)要的命令,對(duì)已有的文檔進(jìn)行添加或編寫?,F(xiàn)利用字符串來(lái)定義,設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)簡(jiǎn)單行編輯程序,具備行編輯器的行插入,行刪除等基本功能。關(guān)鍵詞:行編輯器;文本
2、;字符串Abstract文本編輯程序是利用計(jì)算機(jī)進(jìn)行文字加工的基本軟件工具,實(shí)現(xiàn)對(duì)文本文件的插入、刪除等修改操作。限制這些操作以行為單位進(jìn)行的編輯程序稱為行編輯程序。行編輯器只能從事最簡(jiǎn)單的輸入輸出。輸入、編輯、文檔顯示并不能同步地進(jìn)行。一般而言,用戶無(wú)法直接輸入文本,而只能在文本終端上通過(guò)簡(jiǎn)要的命令,對(duì)已有的文檔進(jìn)行添加或編寫?,F(xiàn)利用字符串來(lái)定義,設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)簡(jiǎn)單行編輯程序,具備行編輯器的行插入,行刪除等基本功能。Text editor is the basic software tools, the use of computers for word processing, to ac
3、hieve the insertion of text files, delete modify operation. Restrictions on these operating units to conduct the editor called line editing process. Line editor can be engaged in the input and output of the most simple. The input, editing, document display can not synchronously. Edit text files can
4、be quite large, all read into memory is neither economic nor can always achieve. One solution is to edit line by line, any moment only put a line to edit the file in memory, known as the living area. Allow the discovery of the error input errors and corrected in time. In general, the user cannot ent
5、er text directly, but only through the brief commands in the text terminal, the document may be added or write. We use the string to define, design and realize a simple line editor, with the line editor row insert, delete and other basic functions.Keywords: line editor; text; string目 錄1.概述11.1設(shè)計(jì)背景11
6、.2內(nèi)容21.3要求22.概要設(shè)計(jì)32.1程序模塊圖32.2 存儲(chǔ)結(jié)構(gòu)的定義42.3功能函數(shù)42.4主函數(shù)53.詳細(xì)設(shè)計(jì)53.1數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)53.2程序說(shuō)明73.3主要函數(shù)設(shè)計(jì)73.3.1行刪除函數(shù)del()子程序設(shè)計(jì)73.3.2行插入行數(shù)insert()子程序的設(shè)計(jì)103.3.3活區(qū)切換函數(shù)saveanddisplay(20)子函數(shù)設(shè)計(jì)123.3.4顯示函數(shù)display()子程序設(shè)計(jì)134.調(diào)試過(guò)程及實(shí)驗(yàn)結(jié)果164.1調(diào)試過(guò)程165總結(jié)21參考文獻(xiàn)22致 謝231.概述1.1設(shè)計(jì)背景行編輯器是文本編輯器的一種,針對(duì)行進(jìn)行編輯?,F(xiàn)在看來(lái)當(dāng)然非常地老式,這種編輯器起源于操作員還使用電傳打字機(jī)的
7、年代,也就是一個(gè)打印機(jī)連著鍵盤,因?yàn)闆](méi)有顯示器,也就無(wú)法在文檔中移動(dòng)光標(biāo)。行編輯器只能從事最簡(jiǎn)單的輸入輸出。輸入、編輯、文檔顯示并不能同步地進(jìn)行。一般而言,用戶無(wú)法直接輸入文本,而只能在文本終端上通過(guò)簡(jiǎn)要的命令,對(duì)已有的文檔進(jìn)行添加或編寫。命令和文本,以及編輯器的相應(yīng)輸出,會(huì)根據(jù)他們的輸入順序,從底部開(kāi)始逐一顯示。雖然命令一般會(huì)顯示被修改的行,但如果要將行連同文檔中的上下文顯示,則需要另外單獨(dú)的命令?,F(xiàn)在常見(jiàn)的編輯器,都是通過(guò)移動(dòng)光標(biāo),來(lái)選取要編輯的文本段落,與此不同的是,行編輯只能對(duì)“當(dāng)前行”進(jìn)行編輯。一般也可以在行內(nèi)進(jìn)行上下文匹配,或者選擇特定行,以決定哪部分文檔將被編輯或顯示。當(dāng)然,這些
8、編輯每次都只能針對(duì)一行。行編輯器就只能一行一行的編輯,不能出錯(cuò),一出錯(cuò)就得重來(lái)。因此我們用字符串來(lái)定義,可以增強(qiáng)行編輯器的應(yīng)用,增強(qiáng)可讀性,加快人們的編輯文本的效率,從而推進(jìn)社會(huì)的發(fā)展。這就是其重要意義。1.2內(nèi)容本課程設(shè)計(jì)主要解決在文本編輯中,對(duì)行編輯的問(wèn)題,通過(guò)字符串完善對(duì)文本的編輯,實(shí)現(xiàn)對(duì)文本的查找、替換、和修改數(shù)據(jù)。在本課程設(shè)計(jì)中,系統(tǒng)開(kāi)發(fā)平臺(tái)為Windows2000,程序設(shè)計(jì)語(yǔ)言為C語(yǔ)言,程序運(yùn)行平臺(tái)為Windws 98/2000/XP。在程序設(shè)計(jì)中采用了字符串的方法實(shí)現(xiàn)對(duì)簡(jiǎn)單的行編輯器。程序通過(guò)調(diào)試運(yùn)行,初步實(shí)現(xiàn)了設(shè)計(jì)目標(biāo),并且經(jīng)過(guò)適當(dāng)完善后,將可以應(yīng)用在實(shí)際中解決問(wèn)題。用字符串實(shí)
9、現(xiàn)一個(gè)簡(jiǎn)單的行編輯器,其中包括字符的按行錄入、修改、替換、查詢。用棧實(shí)現(xiàn)簡(jiǎn)單的行編輯程序,文本編輯程序是利用計(jì)算機(jī)進(jìn)行文字加工的基本軟件工具,實(shí)現(xiàn)對(duì)文本文件的插入、刪除等修改操作。限制這些操作以行為單位進(jìn)行的編輯程序稱為行編輯程序。被編輯的文本文件可能很大,全部讀入編輯程序的數(shù)據(jù)空間(內(nèi)存)的做法即不經(jīng)濟(jì),又不總能實(shí)現(xiàn)。一種解決方法是逐段的編輯。任何時(shí)刻只把待編輯文件的一段放在內(nèi)存,稱為活區(qū)。試按這種方法實(shí)現(xiàn)一個(gè)簡(jiǎn)單的行編輯程序,設(shè)文件每行不超過(guò)320個(gè)字符,很少超過(guò)80個(gè)字符。1.3要求(1)用棧實(shí)現(xiàn)簡(jiǎn)單的行編輯程序,主要功能有:行插入(格式:i<行號(hào)><回車><
10、;文本><回車>,即 將<文本>插入活區(qū)中的第<行號(hào)>行之后);行刪除(格式:d<行號(hào)1> <行號(hào)2><回車>, 刪除活區(qū)中第<行號(hào)1>行(到第<行號(hào)2>行),兩種格式的例子是:“d10 ”和“d10 14 ”);活頁(yè)切換(格式:n<回車>, 將活區(qū)寫入輸出文件,并從輸入文件中讀入下一段,作為新的活區(qū)); 活區(qū)顯示(格式:p<回車>, 逐頁(yè)地(每頁(yè)20行)顯示活區(qū)內(nèi)容,每顯示一頁(yè)之后由用戶決定是否
11、繼續(xù)顯示以后各頁(yè)(如果存在)。印出的每一行要前置行號(hào)和一個(gè)空格符,行號(hào)固定占4位,增量為1); (2)設(shè)文件每行不超過(guò)320個(gè)字符,很少超過(guò)80個(gè)字符,由學(xué)生依據(jù)軟件工程的測(cè)試技術(shù)自己確定,注意測(cè)試邊界數(shù)據(jù),如首行、尾行。算法對(duì)于合法的輸入數(shù)據(jù)都能產(chǎn)生滿足規(guī)格說(shuō)明要求的結(jié)果;(3)算法對(duì)于精心選擇的典型、苛刻而帶有刁難性的幾組輸入數(shù)據(jù)能夠得出滿足規(guī)格說(shuō)明要求的結(jié)果;對(duì)算法實(shí)現(xiàn)過(guò)程中的異常情況能給出出錯(cuò)信息;(4)較高要求:加入復(fù)雜操作,如對(duì)某行進(jìn)行串替換等;2.概要設(shè)計(jì)該程序采用模塊化設(shè)計(jì),主要分為字符串顯示模塊,字符串插入模塊,字符串刪除模塊,幫助信息模塊。用戶通過(guò)主模塊對(duì)其余各模塊進(jìn)行調(diào)用
12、,實(shí)現(xiàn)程序功能。2.1程序模塊圖行編輯器字符串顯示模塊字符串插入模塊字符串刪除模塊幫助信息模塊圖1.1程序模塊圖2.2 存儲(chǔ)結(jié)構(gòu)的定義typedef struct text char string80;/存儲(chǔ)每一行的元素 struct text *next;/指向后一個(gè)節(jié)點(diǎn)的指針 int flat;/確定此行是否被刪除的標(biāo)志text,*textp;2.3功能函數(shù)Status Createlist(textp &head);功能:建立一個(gè)80個(gè)節(jié)點(diǎn)的鏈表,是整個(gè)活區(qū)的大小int del(textp head);功能:刪除顯示的活區(qū)的任意一行。int display(textp &
13、head);功能:按照每頁(yè)20行的規(guī)格顯示活區(qū)的內(nèi)容。void freemem(textp &head);功能:銷毀鏈表,釋放內(nèi)存。int insert(textp &head);功能:在顯示的活區(qū)插入一行內(nèi)容。 Status SaveFile(textp head,FILE *out);功能:將活區(qū)的內(nèi)容保存到輸出文件。 Status LoadFile(textp head,FILE *fp);功能:從輸入文件讀取內(nèi)容到活區(qū)。 void HELP();功能:提供命令的格式。2.4主函數(shù)void main()初始化; 輸入命令;Switch(c)case e: 退出并保存編輯的
14、內(nèi)容case p: 顯示活區(qū) case n: 活區(qū)切換case d: 刪除一行case i: 插入一行case c: 清屏case h: 獲得幫助功能:進(jìn)行初始化,調(diào)用其它函數(shù),實(shí)現(xiàn)功能。3.詳細(xì)設(shè)計(jì)3.1數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì) 棧是一種先進(jìn)后出的線性表,為了能按照原來(lái)的輸入順序輸出元素,我在程序中設(shè)計(jì)了兩個(gè)棧,第一個(gè)棧用來(lái)存儲(chǔ)輸入的字符,然后把第一個(gè)棧的元素出棧,并且把出棧的元素放入第二個(gè)棧中,這樣就實(shí)現(xiàn)了出棧是元素的順序和最開(kāi)始輸入的順序是一致的了。首先,構(gòu)造一個(gè)空棧函數(shù)InitStack(SqStack &S);然后設(shè)計(jì)輸入函數(shù)push(SqStack &S,char e)和出棧函
15、數(shù)pop(SqStack &S,char &e);在這兩個(gè)函數(shù)里,我們通過(guò)頂指針的增加(*S.top+=e)和指針的減少來(lái)實(shí)現(xiàn)元素的進(jìn)棧和出棧(e=*-S.top)。我們通過(guò)設(shè)計(jì)函數(shù)DestroyStack(SqStack &S)來(lái)清空棧中所有的元素,通過(guò)使用free()函數(shù)來(lái)釋放*S.top的地址。通過(guò)函數(shù)PrintStack(SqStack &S)輸出顯示輸入的所有元素。程序運(yùn)行時(shí),其運(yùn)行流程如下圖所示:輸入初始化命令i命令d命令n命令p命令c命令h命令e插入一行刪除一行切換活區(qū)顯示活區(qū)清屏幫助信息退出開(kāi)始程序圖3.1 行編輯器流程圖3.2程序說(shuō)明主要功能函
16、數(shù):Status Createlist(textp &head);int del(textp head);int display(textp &head);void freemem(textp &head);int insert(textp &head); Status SaveFile(textp head,FILE *out); Status LoadFile(textp head,FILE *fp); void HELP();3.3主要函數(shù)設(shè)計(jì)3.3.1行刪除函數(shù)del()子程序設(shè)計(jì)在函數(shù)的開(kāi)始定義了三個(gè)指向struct text結(jié)構(gòu)體的指針變量p1,p2
17、,p3。輸入要?jiǎng)h除的兩個(gè)行號(hào)(比如1 3),表示刪除從第1行到第3行的數(shù)據(jù)。程序流程圖如圖3.2所示。輸出要?jiǎng)h除的行 返回定義指針變量text *p1,*p2,*p3給min和max賦初值定義整型變量min,max,i通過(guò)指針變量p1,找到min行在活區(qū)中的位置通過(guò)指針變量p1找到max行在活區(qū)中的位置刪除行min到max的內(nèi)容保存顯示刪除后的內(nèi)容saveanddisplay() 開(kāi) 始圖3.2行刪除流程圖函數(shù)實(shí)現(xiàn):執(zhí)行行刪除功能時(shí),由主函數(shù)調(diào)用刪除函數(shù)刪除所需刪除行,再調(diào)用顯示函數(shù),顯示執(zhí)行行刪除后的文本。int del(textp head)/刪除d命令對(duì)應(yīng)的函數(shù),用來(lái)刪maxmin中的行
18、,用結(jié)構(gòu)體中的flat表示是否被刪除 text *p1,*p2; int min,max,i; scanf("%d %d",&min,&max); if(head=NULL) printf("nlist null!n"); return OK; p1=p2=head; for(i=0;i<min-1;i+)/*找到要?jiǎng)h除的第一行*/ p1=p1->next; for(i=0;i<max;i+)/*找到要?jiǎng)h除的最后一行*/ p2=p2->next; for(;p1!=p2;p1=p1->next)/*刪除中間的
19、節(jié)點(diǎn),將flat賦值0*/ p1->flat=0; return OK;3.3.2行插入行數(shù)insert()子程序的設(shè)計(jì)行插入函數(shù)的開(kāi)始定義了三個(gè)指向struct text結(jié)構(gòu)體的指針變量p,p1,p2,在給hang賦初值后使p1指向頭結(jié)點(diǎn),利用for循環(huán),找到要插入行的前一行hang-1,然后給插入的行分配內(nèi)存空間。輸入文本內(nèi)容并連入鏈表。行程序流程圖如3.3所示。定義三個(gè)類型的指針變量p,p1,p2開(kāi) 始輸出“請(qǐng)輸入要插入的行”給變量行賦初始值令p1=頭結(jié)點(diǎn),找到行插入要插入的文本內(nèi)容輸出修改后的鏈表(文本內(nèi)容)將修改后的鏈表存盤(savveandedisplay)返 回圖3.3 行
20、插入函數(shù)流程圖 函數(shù)實(shí)現(xiàn)int insert(textp &head)/插入i命令對(duì)應(yīng)的函數(shù) int hang,i; textp p,p1; scanf("%d",&hang); p=(textp)malloc(sizeof(text);/為插入行分配空間 p->flat=1; fflush(stdin); fgets(p->string,80,stdin); /*輸入插入行的內(nèi)容*/ p1=head; if(hang=1) if(!head->flat) /*頭結(jié)點(diǎn)已被刪除*/ for(;p1&&!p1->flat;
21、p1=p1->next); /*找到第一個(gè)flat=1的點(diǎn)*/ p->next=p1->next; p1->next=p; else for(i=1,p1=head;i<hang;p1=p1->next)/找到要插入行的后一行 if(p1->flat=1)i+; p->next=p1->next;/從此行向下將插入行插入到鏈表中 p1->next=p; return OK;Status LoadFile(textp head,FILE *fp) /*從文件讀內(nèi)容到活區(qū)*/ textp p; for(p=head;p&&
22、(!feof(fp);p=p->next) if(!fgets(p->string,80,fp)break; p->flat=1; return 0;Status SaveFile(textp head,FILE *out) /*存儲(chǔ)活區(qū)的函數(shù)*/ textp p; for(p=head;p;p=p->next)if(p->flat=1)fputs(p->string,out); /*輸出活區(qū)的內(nèi)容到指定的文件*/ p->flat=0; return OK; 3.3.3活區(qū)切換函數(shù)saveanddisplay(20)子函數(shù)設(shè)計(jì) 活區(qū)切換函數(shù)實(shí)現(xiàn)活區(qū)之間
23、的切換,把文本的每一頁(yè)(20行)作為一個(gè)活區(qū),可以逐頁(yè)的把活區(qū)內(nèi)容顯示出來(lái)。在活區(qū)切換函數(shù)中定義了一個(gè)指向struct text結(jié)構(gòu)體的指針變量p賦初值*p=NULL,當(dāng)i小于20時(shí),如果行沒(méi)有被刪除(flag=1)就通過(guò)fputs函數(shù)把活區(qū)內(nèi)容寫入到文件(out).YNYNYYN 定義變量 i行沒(méi)有被刪除p-flat=1判斷文件是否存在 非空輸出活區(qū)內(nèi)容輸出file end!返 回1利用指針變量p到hang 的具體位將行的內(nèi)容寫入到文件outN返回 0 返 回1 返 回0開(kāi) 始圖3.4活區(qū)切換函數(shù)save()流程圖 函數(shù)實(shí)現(xiàn)void HELP()/幫助函數(shù),顯示一些命令的格式 printf(
24、"nt *n"); printf("t * 行插入格式: i<行號(hào)><回車><文本><回車> *n"); printf("t * 行刪除格式: d<回車><行號(hào)1><空格><行號(hào)2><回車> *n"); printf("t * 活區(qū)切換格式: n<回車> *n"); printf("t * 活區(qū)顯示格式: p<回車> *n"); printf("t * 清
25、屏格式: c<回車> *n"); printf("t * 幫助格式: h<回車> *n"); printf("t * 串替換: t<回車><文本> *n"); printf("t * 退出程序: e<回車> *n"); printf("t *n");3.3.4顯示函數(shù)display()子程序設(shè)計(jì)顯示函數(shù)display()在程序運(yùn)行過(guò)程中經(jīng)常得以調(diào)用,是行編輯程序中極其重要的一個(gè)函數(shù)。行編輯程序通過(guò)對(duì)顯示函數(shù)display()的調(diào)用,在程序執(zhí)行行插
26、入、行刪除等編輯功能后,輸出編輯后的文本。在活區(qū)顯示中首先把文本內(nèi)容鏈入鏈表,函數(shù)中用page來(lái)實(shí)現(xiàn)頁(yè)碼的自增。函數(shù)種定義了一個(gè)指向struct text結(jié)構(gòu)體的指針變量p ,在文件fp非空和行號(hào)小于20的情況下,利用fgets函數(shù)使p->string從打開(kāi)的文件fp中得到字符的值,然后輸出每一行的行號(hào)和每一行的內(nèi)容。其程序流程圖如圖3.5所示。開(kāi) 始定義變量i,coint,text *p打開(kāi)的文件fp非空且coint=y|coint=Y定義page(頁(yè)數(shù) )輸出頁(yè)數(shù)從文件中讀入數(shù)組元素p->string輸出行號(hào)和行的內(nèi)容判斷文件是否非空輸出file end!返 回YYNN圖3.5
27、顯示函數(shù)流程圖int display(textp &head)/顯示P命令對(duì)應(yīng)的函數(shù),用來(lái)顯示活區(qū)的內(nèi)容 int i; textp p; for(i=1,p=head;i<=20&&p;p=p->next)if(p->flat=1)printf("%2d",i); /*輸出每一行的行號(hào)*/i+; printf(" %s",p->string);head=p;return 0;void freemem(textp &head)/釋放鏈表所占的內(nèi)存 text *p; for(p=head;head!=N
28、ULL;) head=p->next; free(p); p=head;4.調(diào)試過(guò)程及實(shí)驗(yàn)結(jié)果4.1調(diào)試過(guò)程 測(cè)試數(shù)據(jù):任意的TXT文件,只要每行不超過(guò)80個(gè)字符。進(jìn)入程序的界面,出現(xiàn)命令的幫助信息,按任意鍵開(kāi)始程序編輯。輸入INPUT文件與OUTPUT文件的名字打開(kāi)相應(yīng)的文件 。輸入P命令顯示活區(qū)的內(nèi)容。 其它的命令操作如下: 行插入格式: i<行號(hào)><回車><文本><回車> 行刪除格式: d<回車><行號(hào)1><空格><行號(hào)2><回車> 活區(qū)切換格式: n<回車> 清
29、屏格式: c<回車> 幫助格式: h<回車> 最后輸入e命令退出程序。 在程序編寫好之后,便開(kāi)始在VC中編譯執(zhí)行程序,雖然程序沒(méi)有錯(cuò)誤,但是執(zhí)行過(guò)程中插入可以實(shí)現(xiàn),刪除卻實(shí)現(xiàn)不了,在仔細(xì)檢驗(yàn)程序后,發(fā)現(xiàn)在執(zhí)行過(guò)程中沒(méi)有先打開(kāi)文件,因此無(wú)法繼續(xù)執(zhí)行。再改正之后便可以得到正確的運(yùn)行結(jié)果了。 在程序運(yùn)行初始狀態(tài),界面顯示如下。提示用戶輸入任意鍵進(jìn)行其他功能。 圖4.1程序初始化界面輸出提示信息 開(kāi) 始 返 回輸出提示信息 開(kāi) 始 返 回輸入任意鍵后,用戶可根據(jù)自己的要求,在輸入文件名的情況下輸入其他命令。下圖是顯示文件函數(shù)display()執(zhí)行后的界面。輸出提示信息 開(kāi) 始
30、返 回輸出提示信息 開(kāi) 始 返 回 圖4.2顯示文本行插入執(zhí)行過(guò)程。在鍵盤上輸入i2回車12345后,在文本第二行插入12345字符串。 圖4.3執(zhí)行行插入輸入行刪除命令d后,用d1 1便可刪除第一行。而原來(lái)狀態(tài)下的第二行變?yōu)榈谝恍酗@示。 圖4.4執(zhí)行行刪除輸入活動(dòng)區(qū)切換等指令后,便會(huì)出現(xiàn)以下界面。 圖4.5執(zhí)行活區(qū)切換此文本為該程序的輸入文件a.txt,儲(chǔ)存文本文檔于計(jì)算機(jī)D盤,將其用于程序執(zhí)行。 圖4.6儲(chǔ)存文本文檔計(jì)算機(jī)中存儲(chǔ)的文本b.txt本是一個(gè)空文本文檔,但在執(zhí)行完程序后,文本中出現(xiàn)了程序運(yùn)行的最終結(jié)果。這是在退出后的最終結(jié)果。在文本每行中添加了標(biāo)號(hào)。 圖4.7輸出文本文檔 程序調(diào)試總結(jié):通過(guò)對(duì)該題目的編寫調(diào)試以及結(jié)果顯示可以看出,本程序可以滿足任務(wù)書的要求,實(shí)現(xiàn)了對(duì)行的插入、刪除、活區(qū)顯示、活區(qū)切換等各項(xiàng)要求。在執(zhí)行插入命令的過(guò)程中,要檢驗(yàn)活區(qū)的大小,如果插入這一行之后,仍保持不超的話,就將其插入。在輸入未讀完時(shí),可將未讀完的內(nèi)容保持在活區(qū)的頂部。此外,也實(shí)現(xiàn)了一些簡(jiǎn)單的操作,例如,創(chuàng)建了一個(gè)鏈表,實(shí)現(xiàn)文本文件的打開(kāi),實(shí)現(xiàn)以行為單位是很合理的。通過(guò)這次課設(shè),了解簡(jiǎn)單行編輯程序應(yīng)用的廣泛性。本課程設(shè)計(jì)的簡(jiǎn)單行編輯程序各功能的運(yùn)行操作十分快捷,能滿足用戶的需要。5總結(jié)通過(guò)這次數(shù)據(jù)結(jié)構(gòu)的課程設(shè)計(jì),我了解了很多調(diào)試程序的方法,并且學(xué)會(huì)了一些
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年貧瘦煤合作協(xié)議書
- 2025年特異性植物源農(nóng)藥合作協(xié)議書
- 2025年二年級(jí)下冊(cè)班級(jí)工作總結(jié)(2篇)
- 2025年企業(yè)勞動(dòng)用工合同標(biāo)準(zhǔn)樣本(2篇)
- 2025年個(gè)人門面房租賃合同標(biāo)準(zhǔn)樣本(2篇)
- 2025年五年級(jí)下學(xué)期少先隊(duì)工作總結(jié)(五篇)
- 2025年中介服務(wù)合同范例(三篇)
- 戶外運(yùn)動(dòng)中心裝修合同終止
- 液體化工品國(guó)內(nèi)運(yùn)輸協(xié)議
- 寵物運(yùn)輸包車協(xié)議樣本
- 2025-2030年中國(guó)反滲透膜行業(yè)市場(chǎng)發(fā)展趨勢(shì)展望與投資策略分析報(bào)告
- 湖北省十堰市城區(qū)2024-2025學(xué)年九年級(jí)上學(xué)期期末質(zhì)量檢測(cè)道德與法治試題 (含答案)
- 山東省濰坊市2024-2025學(xué)年高三上學(xué)期1月期末 英語(yǔ)試題
- 春節(jié)節(jié)后收心會(huì)
- 《榜樣9》觀后感心得體會(huì)四
- 《住院患者身體約束的護(hù)理》團(tuán)體標(biāo)準(zhǔn)解讀課件
- 中國(guó)心力衰竭診斷與治療指南解讀
- 復(fù)工復(fù)產(chǎn)工作方案范本【復(fù)產(chǎn)復(fù)工安全工作方案】
- HyperMesh100基礎(chǔ)培訓(xùn)教程
- 現(xiàn)代機(jī)械強(qiáng)度理論及應(yīng)用課件匯總?cè)譸pt完整版課件最全教學(xué)教程整套課件全書電子教案
- 農(nóng)村信用社個(gè)人借款申請(qǐng)審批表
評(píng)論
0/150
提交評(píng)論