亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? algo4-3.cpp

?? Status StrAssign(SString T,char *chars) { // 生成一個其值等于chars的串T int i if(strlen(chars)>MAXST
?? CPP
字號:
 // algo4-3.cpp 文本行編輯
 #include"c1.h"
 #include"c4-2.h" // 采用串的堆分配存儲結構
 #include"bo4-2.cpp" // 串的堆分配基本操作

 #define MAX_LEN 25 // 文件最大行數
 #define LINE_LEN 75 // 每行字符數最大值+1
 #define NAME_LEN 20 // 文件名最大長度(包括盤符、路徑)+1

 // 全局變量
 HString T[MAX_LEN];
 char str[LINE_LEN],filename[NAME_LEN]="";
 FILE *fp;
 int n=0; // 文件行數

 void Open()
 { // 打開文件(新或舊)
   int i;
   if(filename[0]) // 文件已打開
     printf("已存在打開的文件\n");
   else
   {
     printf("請輸入文件名(可包括盤符、路徑,不超過%d個字符): ",NAME_LEN-1);
     scanf("%s%*c",filename);
     fp=fopen(filename,"r");
     if(fp) // 已存在此文件
     {
       do
       {
         fgets(str,LINE_LEN,fp);
         i=strlen(str);
         str[i-1]=0; // 將10強制改為0
         i--;
         if(i>0)
         {
           StrAssign(T[n],str);
           n++;
           if(n>MAX_LEN)
           {
             printf("文件太大\n");
             return;
           }
         }
       }while(i>0);
       fclose(fp);
     }
     else
       printf("新文件\n");
   }
 }

 void List()
 { // 顯示文件內容
   int i;
   for(i=0;i<n;i++)
   {
     printf("%d: ",i+1);
     StrPrint(T[i]);
   }
   getchar();
 }

 void Insert()
 { // 插入行
   int i,l,m;
   printf("在第l行前插m行,請輸入l m: ");
   scanf("%d%d%*c",&l,&m);
   if(n+m>MAX_LEN)
   {
     printf("插入行太多\n");
     return;
   }
   if(n>=l-1&&l>0)
   {
     for(i=n-1;i>=l-1;i--)
       T[i+m]=T[i];
     n+=m;
     printf("請順序輸入待插入內容:\n");
     for(i=l-1;i<l-1+m;i++)
     {
       gets(str);
       InitString(T[i]);
       StrAssign(T[i],str);
     }
   }
   else
     printf("行超出范圍\n");
 }

 void Delete()
 { // 刪除行
   int i,l,m;
   printf("從第l行起刪除m行,請輸入l m: ");
   scanf("%d%d%*c",&l,&m);
   if(n>=l+m-1&&l>0)
   {
     for(i=l-1+m;i<n;i++)
       T[i-m]=T[i];
     for(i=n-m;i<n;i++)
       InitString(T[i]);
     n-=m;
   }
   else
     printf("行超出范圍\n");
 }

 void Copy()
 { // 拷貝行
   int i,l,m,k;
   printf("把第l行開始的m行插在原k行之前,請輸入l m k: ");
   scanf("%d%d%d%*c",&l,&m,&k);
   if(n+m>MAX_LEN)
   {
     printf("拷貝行太多\n");
     return;
   }
   if(n>=k-1&&n>=l-1+m&&(k>=l+m||k<=l))
   {
     for(i=n-1;i>=k-1;i--)
       T[i+m]=T[i];
     n+=m;
     if(k<=l)
       l+=m;
     for(i=l-1;i<l-1+m;i++)
     {
       InitString(T[i+k-l]);
       StrCopy(T[i+k-l],T[i]);
     }
   }
   else
     printf("行超出范圍\n");
 }

 void Modify()
 { // 修改行
   int i;
   printf("請輸入待修改的行號: ");
   scanf("%d%*c",&i);
   if(i>0&&i<=n) // 行號合法
   {
     printf("%d: ",i);
     StrPrint(T[i-1]);
     printf("請輸入新內容: ");
     gets(str);
     StrAssign(T[i-1],str);
   }
   else
     printf("行號超出范圍\n");
 }

 void Search()
 { // 查找字符串
   int i,k,f=1; // f為繼續查找標志
   char b;
   HString s;
   printf("請輸入待查找的字符串: ");
   scanf("%s%*c",str);
   InitString(s);
   StrAssign(s,str);
   for(i=0;i<n&&f;i++) // 逐行查找
   {
     k=1; // 由每行第1個字符起查找
     while(k)
     {
       k=Index(T[i],s,k); // 由本行的第k個字符開始查找
       if(k) // 找到
       {
         printf("第%d行: ",i+1);
         StrPrint(T[i]);
         printf("第%d個字符處找到。繼續查找嗎(Y/N)? ",k);
         b=getchar();
         getchar();
         if(b!='Y'&&b!='y') // 中斷查找
         {
           f=0;
           break;
         }
         else
           k++;
       }
     }
   }
   if(f)
     printf("沒找到\n");
 }

 void Replace()
 { // 替換字符串
   int i,k,f=1; // f為繼續替換標志
   char b;
   HString s,t;
   printf("請輸入待替換的字符串: ");
   scanf("%s%*c",str);
   InitString(s);
   StrAssign(s,str);
   printf("替換為: ");
   scanf("%s%*c",str);
   InitString(t);
   StrAssign(t,str);
   for(i=0;i<n&&f;i++) // 逐行查找、替換
   {
     k=1; // 由每行第1個字符起查找
     while(k)
     {
       k=Index(T[i],s,k); // 由本行的第k個字符開始查找
       if(k) // 找到
       {
         printf("第%d行: ",i+1);
         StrPrint(T[i]);
         printf("第%d個字符處找到。是否替換(Y/N)? ",k);
         b=getchar();
         getchar();
         if(b=='Y'||b=='y')
         {
           StrDelete(T[i],k,StrLength(s));
           StrInsert(T[i],k,t);
         }
         printf("繼續替換嗎(Y/N)?");
         b=getchar();
         getchar();
         if(b!='Y'&&b!='y') // 中斷查找、替換
         {
           f=0;
           break;
         }
         else
           k+=StrLength(t);
       }
     }
   }
   if(f)
     printf("沒找到\n");
 }

 void Save()
 { // 存盤
   int i;
   getchar();
   fp=fopen(filename,"w");
   if(fp)
   {
     for(i=0;i<n;i++)
     {
       T[i].ch[T[i].length]=0;
       fputs(T[i].ch,fp);
       fputc(10,fp);
     }
     fputc(10,fp);
     fclose(fp);
   }
   else
     printf("存盤失敗\n");
 }

 void main()
 {
   Status s=TRUE;
   int i,k;
   for(i=0;i<MAX_LEN;i++) // 初始化串
     InitString(T[i]);
   while(s)
   {
     printf("請選擇: 1.打開文件(新或舊)  2.顯示文件內容\n");
     printf("        3.插入行  4.刪除行  5.拷貝行  6.修改行\n");
     printf("        7.查找字符串        8.替換字符串\n");
     printf("        9.存盤退出          0.放棄編輯\n");
     scanf("%d",&k);
     switch(k)
     {
       case 1: Open();
               break;
       case 2: List();
               break;
       case 3: Insert();
               break;
       case 4: Delete();
               break;
       case 5: Copy();
               break;
       case 6: Modify();
               break;
       case 7: Search();
               break;
       case 8: Replace();
               break;
       case 9: Save();
       case 0: s=FALSE;
     }
   }
 }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品伊人色| 午夜精品免费在线| 成人黄色av网站在线| 欧美激情一区二区三区四区| 国产成人午夜高潮毛片| 国产精品久久夜| 色中色一区二区| 免费在线成人网| 国产亚洲人成网站| 91一区二区三区在线观看| 亚洲综合一二区| 日韩欧美专区在线| 成人免费毛片片v| 亚洲综合色婷婷| 亚洲精品在线三区| 99re热视频精品| 日本va欧美va瓶| 中文字幕乱码日本亚洲一区二区| 91免费版在线| 精品在线播放午夜| 亚洲欧洲精品天堂一级| 欧美日韩国产中文| 国产成人精品亚洲午夜麻豆| 亚洲五月六月丁香激情| 久久蜜臀精品av| 91免费小视频| 久久精品国产久精国产| 亚洲激情自拍偷拍| 精品欧美乱码久久久久久 | 亚洲第一av色| 久久综合狠狠综合久久激情| 色综合久久中文字幕| 日韩精品亚洲专区| 综合在线观看色| 欧美成人精品福利| 在线亚洲人成电影网站色www| 美女网站在线免费欧美精品| 中文字幕亚洲电影| 日韩美女视频一区二区在线观看| 99精品一区二区| 激情综合色综合久久| 一区二区三区**美女毛片| 国产午夜三级一区二区三| 欧美日韩国产bt| 97成人超碰视| 国产成人av电影免费在线观看| 亚洲超碰精品一区二区| 日韩理论在线观看| 精品国产一区二区三区av性色| 日本精品视频一区二区三区| 国产精品18久久久久久久久| 视频一区二区三区在线| 亚洲精品日韩一| 国产精品久久久久久久久久久免费看 | 欧美mv日韩mv国产网站app| 91在线视频官网| 粉嫩av一区二区三区粉嫩| 理论片日本一区| 日韩在线播放一区二区| 一区二区国产盗摄色噜噜| 中文文精品字幕一区二区| 精品国产乱码久久久久久久 | 久久国产麻豆精品| 一区二区国产视频| 亚洲女与黑人做爰| 1024成人网| 国产精品第一页第二页第三页| 精品国产露脸精彩对白 | 国产在线播放一区| 久久国产剧场电影| 美女爽到高潮91| 久久精品国产久精国产爱| 美女视频免费一区| 蜜桃精品在线观看| 麻豆91精品视频| 另类小说一区二区三区| 日韩主播视频在线| 肉色丝袜一区二区| 日本最新不卡在线| 日本va欧美va精品发布| 美女精品一区二区| 韩国成人福利片在线播放| 精品一区二区三区视频 | 白白色亚洲国产精品| 不卡电影一区二区三区| 99久免费精品视频在线观看| 99久久综合色| 欧美视频精品在线观看| 欧美在线播放高清精品| 欧美日韩国产首页| 欧美高清性hdvideosex| 日韩一级完整毛片| 久久久综合激的五月天| 国产精品免费aⅴ片在线观看| 国产精品精品国产色婷婷| 亚洲柠檬福利资源导航| 亚洲午夜精品一区二区三区他趣| 视频在线观看一区| 国产综合久久久久影院| av网站免费线看精品| 欧美亚洲尤物久久| 91精品国产色综合久久不卡电影| 欧美电视剧免费全集观看| 国产亚洲精品中文字幕| 亚洲视频电影在线| 天天影视网天天综合色在线播放| 蜜臀精品一区二区三区在线观看 | 精品少妇一区二区| 中文成人综合网| 亚洲综合男人的天堂| 蜜臀av性久久久久蜜臀aⅴ四虎 | 亚洲成人av在线电影| 免费在线观看一区二区三区| 国产成人99久久亚洲综合精品| 99久久伊人久久99| 在线不卡欧美精品一区二区三区| 欧美精品一区二区三区在线播放| 国产精品每日更新在线播放网址| 一区二区三区四区蜜桃| 美国十次综合导航| 99国产精品久| 日韩一区二区麻豆国产| 日韩理论片在线| 韩国精品主播一区二区在线观看| 色婷婷av久久久久久久| 日韩欧美卡一卡二| 亚洲精品写真福利| 九一九一国产精品| 91久久精品国产91性色tv| 久久免费国产精品| 天堂av在线一区| a亚洲天堂av| 欧美精品一区二区三区蜜桃视频 | 亚洲自拍偷拍欧美| 国产在线视视频有精品| 欧美伊人久久久久久久久影院| 884aa四虎影成人精品一区| 欧美激情一二三区| 麻豆极品一区二区三区| 99久久国产免费看| 26uuu国产日韩综合| 日韩国产精品久久| 在线区一区二视频| 国产精品久久看| 国产精品99久久久久久久vr| 51精品久久久久久久蜜臀| 亚洲欧美激情小说另类| 国产一区二区三区| 欧美精品123区| 亚洲一区二区三区影院| 99精品视频一区二区| 久久综合色综合88| 韩国av一区二区三区四区| 91精品国产综合久久久久| 亚洲一区二区三区爽爽爽爽爽| 成人av免费在线| 国产精品麻豆久久久| 国产精品正在播放| 亚洲精品在线电影| 久久超碰97人人做人人爱| 欧美一级理论性理论a| 亚洲成a人v欧美综合天堂 | 国产精品一区二区x88av| 91麻豆精品久久久久蜜臀| 视频一区在线播放| 精品视频全国免费看| 一区二区在线观看免费| 色综合久久久久综合99| 亚洲人成网站精品片在线观看| 91最新地址在线播放| 国产精品毛片久久久久久| 高潮精品一区videoshd| 国产无一区二区| 99久久久无码国产精品| 亚洲欧美日韩国产另类专区| 欧美性极品少妇| 亚洲国产日韩一区二区| 欧美精品一二三四| 蜜臀av性久久久久蜜臀av麻豆| 欧美成人福利视频| 国产一区二区精品久久99| 久久久午夜精品理论片中文字幕| 国产成人亚洲综合a∨婷婷| 中文字幕乱码日本亚洲一区二区| 91香蕉视频mp4| 亚洲va韩国va欧美va| 91麻豆精品国产91久久久久久久久 | 欧美色综合网站| 日韩av不卡在线观看| 欧美成人高清电影在线| 国产99久久久精品| 亚洲黄色性网站| 欧美一区二区三区在线看 | 99re66热这里只有精品3直播| 亚洲欧洲综合另类在线| 欧美日韩一卡二卡三卡| 久久福利视频一区二区| 国产精品乱码人人做人人爱| 色久综合一二码| 日本vs亚洲vs韩国一区三区|