實驗題,需要做的函式為
輸入乙個字串,刪除字串中的所有空格,輸出刪除空格後字串的長度,需編寫以下功能函式:
1、編寫函式void input(char *str),函式的功能是輸入乙個字串
。2、編寫函式void trim(char *str),函式的功能是從乙個字串中刪除所有的空格。
3、編寫函式 void length(char *str,int *l),利用指標l返回字串的長度。
主函式為
1、編寫主函式main測試上述函式,**如下:
需要分別實現這些函式。於是輕易寫出input與length2個函式分別為
void input(char *str)
{char *a;
a = str;
// scanf("%s",a);
cout<
cin>>a;
void length(char *str,int *l)
{*l=strlen(str);
/*printf("strlen(str)=%d\n",*l);*/
於是在部落格中找了眾多的刪除空格演算法成功是這個函式:
void trim(char *str)
{ int len,k,i;
if (str == null)
return;
len = strlen(str);
k = 0;
for (i=0; i但是關於基礎的小細節在這邊卡了很多天。
如下執行結果
/*cout字串中不能含有空格,否則將以空格作為串的結束符。
如果你鍵入得是hello world 那麼實際上scanf只能獲取
hello 這個單詞。所以要接收空格的話可以用gets()
這個函式。gets(str)是讀入一串以回車結束的字元,
順序存入到以str為首位址的記憶體單元中,最後寫入字元
串結束標誌 「\0 */
才找對了方向並不是演算法錯誤 而是輸入函式的錯誤、將cin>>a;改為gets(str);
終於實現功能結果。
刪除多餘空格
本演算法經過了一些測試用例的測試 get the length of the string int mylenth char basestr char pstr basestr int lenth 0 while pstr 0 return lenth sumspace 表示要刪除的空格的總個數,也...
刪除字串空格
寫乙個去除字串左邊空格,右邊空格,字串中如果出現多個空格,則合併成乙個空格的程式。用python和c來解這道題的思路是不一樣的,c的思路基本就是指標的移動,而python有很多現成的東西可以用。def simplify text,space t r n f delete result word fo...
初學shell,關於空格
初學shell條件判斷語句 時,發現總出現錯誤,經過仔細檢視,發現了 前後都有空格的。往回看了看,發現賦值跟比較語句也是有這個空格的區別的,遂在網上搜了搜,看是否哪些命令有空格的區別,摘錄如下 1 定義變數時,號的兩邊不可以留空格 eg gender femal right gender femal...