freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c語言課程設(shè)計(jì)c語言文本編輯器(參考版)

2025-06-28 06:24本頁面
  

【正文】 cprintf( 。 } textbackground(0)。 gotoxy(48+i,6)。i++) { gotoxy(48+i,2)。 } for(i=1。 gotoxy(59,1+i)。i++) { gotoxy(48,1+i)。 for(i=1。 } window(1,1,80,25)。i++) { gotoxy(1,1+i)。 for(i=0。 textcolor(0)。 break。 case 3:gotoxy(29,6)。 cprintf( Paste )。 break。 case 1:gotoxy(29,4)。 cprintf( Cut )。 cprintf(%c %c Edit %c %c,179,17,179)。 textbackground(0)。 cprintf( Clear )。 cprintf( Paste )。 cprintf( Copy )。 cprintf( Cut )。 cprintf(%c,217)。 cprintf(%c,191)。 cprintf(%c,192)。 cprintf(%c,218)。 } textbackground(7)。i++) { gotoxy(40,2+i)。 for(i=0。 gotoxy(30,8)。 cprintf(%c,196)。 cprintf(%c,196)。i=11。 cprintf(%c,179)。 cprintf(%c,179)。i=5。 gotoxy(27,1)。 insline()。i5。 textbackground(7)。 } } /********************************************************/ if(m%3==1) /*畫Edit菜單項(xiàng)*/ { window(28,2,38,7)。 cprintf( Exit )。 break。 case 3:gotoxy(9,6)。 cprintf( Save )。 break。 case 1:gotoxy(9,4)。 cprintf( New )。 cprintf(%c %c File %c %c,179,17,179)。 textbackground(0)。 cprintf( Exit)。 cprintf(%c,196)。i=10。 cprintf( Save as)。 cprintf( Save )。 cprintf( Open )。 cprintf( New )。 cprintf(%c,217)。 cprintf(%c,191)。 cprintf(%c,192)。 cprintf(%c,218)。 /*輸出右邊的陰影效果*/ } /*以上為顯示菜單項(xiàng)的外觀*/ textbackground(7)。i++) { gotoxy(20,2+i)。 /*輸出下邊的陰影效果*/ for(i=0。 gotoxy(10,10)。 cprintf(%c,196)。 cprintf(%c,196)。i=11。 cprintf(%c,179)。 cprintf(%c,179)。i=7。 gotoxy(7,1)。 insline()。i7。 textbackground(7)。 if(m%3==0) /*畫File菜單項(xiàng)*/ { window(8,2,19,9)。(2) 通過drawmenu(int m,int n)函數(shù),完成第m%3項(xiàng)菜單的繪制,并將光帶條至于第m%3項(xiàng)的第n%b個(gè)菜單選項(xiàng)上,為相應(yīng)菜單所擁有的菜單選項(xiàng)個(gè)數(shù)。 }菜單控制的工作由menuctrl(Hnode*Hhead,int A)函數(shù)和drawmenu(int m,int n)函數(shù)配合完成的。 if(r[i].ch==13||r[i].ch==1) cprintf( )。amp。 textcolor(0)。i++) /*value為數(shù)組下標(biāo)*/ { gotoxy(r[i].col,r[i].line)。/*重新顯示所有文本字符*/ for(i=0。 }/*用不同的前背景色顯示選擇的字符*/void colorview(Hnode *Hhead,int x,int y) { int i。 value++。 r[abs(value)].line=wherey()。amp。 /*若第line行,第col列的字符為回車鍵,則返回1*/ value。 r[abs(value)].ch=check(Hhead,r[abs(value)].line,r[abs(value)].col)。flag==1) /*ctrl+→,光標(biāo)已經(jīng)跳至新處,將當(dāng)前光標(biāo)所在位置的字符的坐標(biāo)和值保存在r數(shù)組中*/ { r[abs(value)].col=wherex()。 } if(A==CRamp。x==76) /*ctrl+→,當(dāng)前光標(biāo)在當(dāng)前行的行尾,光標(biāo)移動(dòng)*/ { flag=1。 } if((A==CR)amp。check(Hhead,y,x)==0) /*ctrl+→,當(dāng)前光標(biāo)處沒有字符但下一行的第一列有字符,光標(biāo)移動(dòng)*/ { flag=1。check(Hhead,wherey()+1,1)0amp。 } if((A==CR)amp。check(Hhead,wherey(),wherex())0) /*ctrl+→,當(dāng)前光標(biāo)的右邊有字符,光標(biāo)移動(dòng)*/ { flag=1。 /*judge(Hhead,wherey()1)上一行的字符個(gè)數(shù)作為x值,光標(biāo)移動(dòng)*/ if((A==CR)amp。amp。(x!=1)) /*ctrl+←,當(dāng)前光標(biāo)不是在行首,光標(biāo)移動(dòng)*/ gotoxy(wherex()1,wherey())。 /*得到當(dāng)前光標(biāo)的坐標(biāo)值*/ if((A==CL)amp。 x=wherex()。/*對(duì)控制鍵進(jìn)行響應(yīng),A:按鍵的整數(shù)值,Hhead:行單鏈表的首地址*/void control(int A, Hnode *Hhead) { void colorview(Hnode *,int,int)。(1) 通過control(int A,Hnode*Hhead)函數(shù),對(duì)控制鍵進(jìn)行響應(yīng),移動(dòng)光標(biāo)后并將光標(biāo)所在位置的字符保存在數(shù)組中。 /*q的數(shù)據(jù)域?yàn)榇诵兄卸喑龅淖址诘牧袉捂湵碇械墓?jié)點(diǎn)地址*/ temp2=temp1。 /*q指向行列表中的第n+1個(gè)節(jié)點(diǎn)*/ temp1=qnext。 qnextlnext=NULL。 qnextl=(Hnode *)malloc(sizeof(Hnode))。amp。amp。amp。 /*若行單鏈表第n個(gè)節(jié)點(diǎn)后還有節(jié)點(diǎn),繼續(xù)test()的相同處理*/ } } else /*若此列單鏈表最后一個(gè)元素為回車符*/ { temp2=p2。/*將多出的字符與下一行的字符相連*/ qnext=p2。 /*新行單鏈表節(jié)點(diǎn)保存此行多出的字符*/ } else /*若此行行尾和行中都沒有回車鍵,或者qnextl不為空*/ { q=qnextl。 tailnextnext=NULL。 tailnext=(node *)malloc(sizeof(node))。qnextl==NULL)/*若p1的數(shù)據(jù)域?yàn)榛剀嚪倚袉捂湵碇兄挥衝個(gè)節(jié)點(diǎn)*/ { qnextl=(Hnode *)malloc(sizeof(Hnode))。 /*在此行的最后一個(gè)字符的前一個(gè)字符處斷行,因?yàn)椴迦朐诖诵胁迦肓艘粋€(gè)新的字符*/ if(tailch!=13) /*若此行行尾不是回車鍵*/ { if(p1ch==13amp。 } p2=p1next。i++) { if(p1ch==13||p1next==NULL) break。 /*若此單鏈表中沒有回車符且有超過76個(gè)節(jié)點(diǎn)時(shí),則p1會(huì)指向此列單鏈表中的第76個(gè)節(jié)點(diǎn)*/ for(i=0。 if(p1==NULL) return。i++) /*定位至行單鏈表中的第n個(gè)元素*/ q=qnextl。 for(i=1。 Hnode *q。 /*在插入新元素后,檢驗(yàn)并處理單鏈表中第m行開始的元素,使其滿足規(guī)則*/} /*執(zhí)行insert()后,檢驗(yàn)第n行及后面的數(shù)據(jù),使其滿足規(guī)則*/ int test(Hnode *Hhead,int n) { int i=0,num1=1。 /*在第m行,第n列的字符前,插入一字符*/ p1next=p。 qnext=p。 /*創(chuàng)建一個(gè)新的列單鏈表節(jié)點(diǎn)*/ pch=a。i++) /*定位至列單鏈表中的第n1個(gè)元素*/ p1=p1next。 for(i=1。i++) /*定位至行單鏈表中的第m個(gè)元素*/ q=qnextl。 for(i=1。 node *p,*p1,*p2。(2) 通過test(Hnode*hhead,int n)函數(shù),檢查和處理第n行及后面的數(shù)據(jù),使其滿足每行不超過76個(gè)字符的規(guī)則void insert(Hnode *Hhead,int m,int n, char a) /*第m行,第n列的位置之前一個(gè)位置,插入單字符*/ { int i。/*返回num,表示當(dāng)前行中只有一個(gè)字符,且沒有回車符*/ }在文本編輯區(qū)中插入字符的工作由insert(Hnode,*Hhead,int m,int n,char a)函數(shù)和test(Hnode*Hhead,int n)函數(shù)配合完成。num!=0) return num。 /*返回num+1,表示當(dāng)前行的最后一個(gè)字符為常規(guī)字符*/ if(pch==13amp。amp。num==0) return 0。 /*統(tǒng)計(jì)第m行的字符個(gè)數(shù)*/ } /*行尾字符還沒有判斷,接下來判斷行尾字符*/ if(pch==13amp。 while(pnext!=NULL) {
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1