数据结构实验之栈与队列九:行编辑器
Description
一個(gè)簡(jiǎn)單的行編輯程序的功能是:接受用戶從終端輸入的程序或數(shù)據(jù),并存入用戶的數(shù)據(jù)區(qū)。
由于用戶在終端上進(jìn)行輸入時(shí),不能保證不出差錯(cuò),因此,若在編輯程序中,“每接受一個(gè)字符即存入用戶數(shù)據(jù)區(qū)”的做法顯然不是最恰當(dāng)?shù)摹]^好的做法是,設(shè)立一個(gè)輸入緩沖區(qū),用以接受用戶輸入的一行字符,然后逐行存入用戶數(shù)據(jù)區(qū)。允許用戶輸入出差錯(cuò),并在發(fā)現(xiàn)有誤時(shí)可以及時(shí)更正。例如,當(dāng)用戶發(fā)現(xiàn)剛剛鍵入的一個(gè)字符是錯(cuò)的時(shí),可補(bǔ)進(jìn)一個(gè)退格符"#",以表示前一個(gè)字符無(wú)效;
如果發(fā)現(xiàn)當(dāng)前鍵入的行內(nèi)差錯(cuò)較多或難以補(bǔ)救,則可以鍵入一個(gè)退行符"@",以表示當(dāng)前行中的字符均無(wú)效。
如果已經(jīng)在行首繼續(xù)輸入’#'符號(hào)無(wú)效。
Input
輸入多行字符序列,行字符總數(shù)(包含退格符和退行符)不大于250。
Output
按照上述說(shuō)明得到的輸出。
Sample
Input
whli##ilr#e(s#*s)
outcha@putchar(*s=#++);
Output
while(*s)
putchar(*s++);
總結(jié)
以上是生活随笔為你收集整理的数据结构实验之栈与队列九:行编辑器的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 数据结构实验之栈与队列八:栈的基本操作
- 下一篇: 数据结构实验之栈与队列十一:refres