華為機試題 修改字串

2021-07-09 19:12:49 字數 1307 閱讀 2819

描述: 

詳細描述:

原型:int 

changestring(char *pinstr,char *poutstr)

輸入引數:

char

*pinstr 

輸入字串

輸出引數:

char

*poutstr 

輸出字串,記憶體空間已分配好,可直接使用

返回值:

int 

0:處理成功 -1:出現異常

限制:無 舉例:

pinstr

:jkds*^*(hkeeeklidddjilfff

poutstr

:jkds*^*(hkeeekliejilg

注意:要求最終輸出的字串中不再存在任何連續出現3次的小寫字母。 4

#include #include #include #include "oj.h"

using namespace std;

int changestring(char *pinstr, char *poutstr)

int lens = strlen(pinstr);

int lensbak = lens;

int i = 0, j = 0;

bool flag = true;

char *pinbak = (char*)malloc(lens+1);

memset(pinbak, 0, lens + 1);

strcpy_s(pinbak, lens + 1, pinstr);

char *poutbak = (char*)malloc(lens + 1);

memset(poutbak, 0, lens + 1);

while (flag)

else

i = i + 2;

}else

} /*如果最後三個不連續*/

if (!(pinbak[lens - 1] == pinbak[lens - 2] && pinbak[lens - 1] == pinbak[lens - 3]))

memset(pinbak, 0, lensbak + 1);

strcpy_s(pinbak, lens+1, poutbak);

} /*並把原字串備份回來*/

poutbak[j] = '\0';

strcpy_s(poutstr, lens + 1, poutbak);

free(pinbak);

free(poutbak);

return 0;

}

華為機試題 字串壓縮

題目描述 40分 通過鍵盤輸入一串小寫字母 a z 組成的字串。請編寫乙個字串壓縮程式,將字串中連續出席的重複字母進行壓縮,並輸出壓縮後的字串。壓縮規則 1.僅壓縮連續重複出現的字元。比如字串 abcbc 由於無連續重複字元,壓縮後的字串還是 abcbc 2.壓縮欄位的格式為 字元重複的次數 字元 ...

華為機試題目 字串替換

題目要求 輸入乙個字串,然後在輸入乙個整數,就是替換字串的次數,然後依次輸入需要替換的字串 例如 輸入 abcdefg 3 a qwe b s fg abc 輸出 qwescdeabc 字串替換 include include include define max 100 using namespa...

華為機試題 字串替換

描述 寫出乙個程式,接受三個引數,分別是乙個字串和兩個字元,然後輸出替換字元後的字串。區分大小寫。例如1 輸入 abcdef,a,b 輸出 bbcdef 例如2 輸入 aabcdef,a,c 輸出 ccbcdef include include include oj.h 功能 輸入 輸出 返回 成功...