如何在串中刪除特定長度的子串
來源:易賢網(wǎng) 閱讀:1157 次 日期:2015-08-25 15:36:41
溫馨提示:易賢網(wǎng)小編為您整理了“如何在串中刪除特定長度的子串”,方便廣大網(wǎng)友查閱!

昨天我們寫了如何在串中插入另外一個串,那么今天我們來看看對應(yīng)的操作:如何在串中刪除指定長度的子串。也就是,從串S1中刪除第pos個字符起長度為len的子串。

其實就是數(shù)組操作啦,把第pos個元素起的len個元素去掉即可。具體怎么去掉呢?把S[pos+len]賦值給S[pos],把S[pos+len+1]賦值給S[pos+1]……以此類推就OK了。

函數(shù)設(shè)計如下:

01

/* 初始條件: 串S存在,1≤pos≤StrLength(S)-len+1 */

02

/* 操作結(jié)果: 從串S中刪除第pos個字符起長度為len的子串 */

03

Status StrDelete(String S,int pos,int len)

04

{

05

int i;

06

if(pos < 1||pos>S[0]-len+1||len < 0)

07

return ERROR;

08

for(i=pos+len; i<=S[0]; i++)

09

S[i-len]=S[i];

10

S[0]-=len;

11

return OK;

12

}

測試執(zhí)行代碼為:

1

case 8:

2

printf("從串s1的第pos個字符起,刪除len個字符,請輸入pos: \n");

3

scanf("%d", &i);

4

printf("再輸入len: \n");

5

scanf("%d", &j);

6

StrDelete(s1,i,j);

7

StrPrint(s1);

8

break;

程序運行結(jié)果:

view source print?

01

1.StrAssign 生成串

02

2.StrLength 求串長

03

3.StrCompare 串比較

04

4.Concat 串連接

05

5.SubString 求子串

06

6.Index 求子串位置

07

7.StrInsert 子串插入

08

8.StrDelete 子串刪除

09

0.退出

10

請選擇你的操作:

11

1

12

串s1為:nowamagic.net

13

14

8

15

從串s1的第pos個字符起,刪除len個字符,請輸入pos:

16

2

17

再輸入len:

18

3

19

nmagic.net

完整的可執(zhí)行程序在后面給出。

更多信息請查看IT技術(shù)專欄

更多信息請查看數(shù)據(jù)庫
易賢網(wǎng)手機網(wǎng)站地址:如何在串中刪除特定長度的子串
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 加入群交流 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65317125(9:00—18:00) 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報警專用圖標(biāo)