華為機試 字串分離

2021-06-18 06:58:28 字數 1178 閱讀 6080

題目描述:

通過鍵盤輸入任意乙個字串序列,字串可能包含多個子串,子串以空格分割。請編寫乙個程式,自動分離出各個子串,並使用','將其分離,並且在最後也補充乙個',',並將子串儲存。

要求實現函式:

void dividestring (const char *pinputstr, long iinputlen, char* poutputstr );

【輸入】   pinputstr:       輸入字串

iinputlen:       輸入字串長度

【輸出】   poutputstr:    輸出字串,空間已經開劈好,與輸入輸入字串等長;

【注意】   只需要完成該函式功能演算法,中間不需要有任何io的輸入輸出

示例:輸入:"abc def ghi       d"

輸出:"abc,def,ghi,d"

方法1(指標):

#include #include void dividestring(char *pinputstr,long iinputlen,char *poutputstr)

while(*pinputstr) //第乙個不為空格的字元開始迴圈

else //碰到乙個或若干個空格連續著,則只在poutputstr裡面加乙個',',其餘忽略繼續往下找

tempchar++;}}

*tempchar='\0'; //結束符號

if(*(tempchar-1)!=',') //判斷最後乙個是不是','

}int main()

char pout[len];

dividestring(pin,pout);

printf("%s\n",pin);

printf("%s",pout);

getch();

return 0;

}

方法2(陣列):

核心**:

void dividestring(const char* pinputstr , long linputlen , char* poutputstr)

else

}poutputstr[j++] = ',';

poutputstr[j++] = '\0';

}

華為機試 字串分隔

題目 連續輸入字串,請按長度為8拆分每個字串後輸出到新的字串陣列 長度不是8整數倍的字串請在後面補數字0,空字串不處理。輸入描述 連續輸入字串 輸入2次,每個字串長度小於100 輸出描述 輸出到長度為8的新字串陣列 示例1 輸入 abc輸出 abc00000 分析 此題要求我們把字串每8個分成一組,...

華為機試 字串過濾 字串壓縮

完全原創也不是了,不過這是乙個學習的過程。華為校園招聘的機試題目 一 題目描述 通過鍵盤輸入一串小寫字母 a z 組成的字串。請編寫乙個字串過濾程式,若字串中出現多個相同的字元,將非首次出現的字元過濾掉。比如字串 abacacde 過濾結果為 abcde 要求實現函式 void stringfilt...

華為機試 字串壓縮(stringZip)

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