資料結構棧之行編輯器

2021-06-22 11:34:02 字數 1005 閱讀 2060

time limit: 1000ms   memory limit: 65536k  有疑問?點這裡^_^

由於使用者在終端上進行輸入時,不能保證不出差錯,因此,若在編輯程式中,「每接受乙個字元即存入使用者資料區」的做法顯然不是最恰當的。較好的做法是,設立乙個輸入緩衝區,用以接受使用者輸入的一行字元,然後逐行存入使用者資料區。允許使用者輸入出差錯,並在發現有誤時可以及時更正。例如,當使用者發現剛剛鍵入的乙個字元是錯的時,可補進乙個退格符"#",以表示前乙個字元無效;

如果發現當前鍵入的行內差錯較多或難以補救,則可以鍵入乙個退行符"@",以表示當前行中的字元均無效。

如果已經在行首繼續輸入'#'符號無效。

輸入乙個多行的字串行。但行字元總數(包含退格符和退行符)不大於250。

按照上述說明得到的輸出。

whli##ilr#e(s#*s)

outcha@putchar(*s=#++);

while(*s)putchar(*s++);

某人批評我不要用函式。。好吧 我又自己敲了乙個棧的定義 放下面

#include 

stl 棧之行編輯器

#include

#include

#include

using namespace std;

char str1[300];

char str2[300];

int main()

;struct stack s;

//定義empty,返回值只能為int

int empty(struct stack *ps)

//定義pop,返回值可為任意型別

int pop(struct stack *ps)

//定義push

void push(struct stack *ps,int x)

//定義stackpop,返回值可為任意型別

int stackpop(struct *ps)

編輯器資料結構

data structures for text sequences 這篇文章給出了實現乙個文字編輯器所需要的的資料結構和不同結構的效率。文章指出有六種資料結構可以實現編輯器,分別是linked list,array,gap,line spans,piece tables和fixed size bu...

Qt之行編輯器

行編輯器是乙個單行的文字編輯器,允許使用者輸入和編輯單行的純文字內容。一 顯示模式 normal 正常顯示 noecho 不顯示任何輸入 password 密碼樣式,以黑點代替顯示 passwordechoonedit 編輯時正常,其餘以密碼樣式顯示 二 輸入掩碼 目的 限制輸入的內容,可使用一些特...

資料結構實驗之棧 行編輯器

time limit 1000ms memory limit 65536k 有疑問?點這裡 乙個簡單的行編輯程式的功能是 接受使用者從終端輸入的程式或資料,並存入使用者的資料區。由於使用者在終端上進行輸入時,不能保證不出差錯,因此,若在編輯程式中,每接受乙個字元即存入使用者資料區 的做法顯然不是最恰...