C語言補全程式 刪除字串中指定字元

時間 2023-01-26 05:50:03

1樓:網友

可以正確執行,不過你要注意,輸入只能輸入13個字元,不然就錯的,而且只能刪一個字元,因為你寫的有點小問題:

修改一下:#include

#include

#include

void squeeze(char s,char c)這樣的話更有通用性:

c語言-刪除字串中指定的字元

2樓:兔丞飛

一、問題描述:從鍵盤輸入一個字串給str和一個字元給c,刪除str中的所有字元c並輸出刪除後的字串str。

1、輸入:第一行是一個字串; 第二行是一個字元。

2、輸出:刪除指定字元後的字串。

二、設計思路:

1、 同插入問題,定義兩個字元陣列a,b。以及標誌刪除位置的int型pos。

2、用gets函式輸入陣列a的值,並利用for迴圈將陣列a copy到 陣列b。

3、利用for迴圈,令pos位的陣列b元素賦值到a。

三、實現**如下:

四、編譯並執行,執行結果如下:

3樓:搜虎哈哈

利用c語言刪除字串中所有指定的字元方法如下:

1.基本方法是,編寫函式fun:deletechar()。

這個函式需要接受兩個引數的傳入,一個為該字串str,另一個為想刪除的字元c。通過對整個字串的逐個遍歷,凡是檢測到字元為c,則刪除此字元。具體實現**如下:

2.在主函式,只需要接受使用者輸入的字串,然後呼叫deletechar()函式,最後輸出結果即可。主函式**實現部分如下:

4樓:蝴蝶蘭

void delchar(char *str, char del)++str;

}*d = 0';

}c語言是一門通用計算機程式語言,應用廣泛。c語言的設計目標是提供一種能以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。

5樓:晴涵陀子

學習c語言當然就得讓他實現對應的作用,實現它的功能。那麼刪除字串中的指定字元在字串太多的情況下不可能人為的去刪除吧。那麼現在就給大家說一下怎麼用c語言設計程式讓它刪除字串中的指定字元。

6樓:兄弟連教育北京總校

直接使用空字串替換就可以了。

string b = abcabcabc";

b="b","

這個應該是比較簡單的了,別的比如取出來你想要刪掉的字元的位置,然後去除。

7樓:匿名使用者

對了你要用什麼做? 陣列還是連結串列?

c語言編寫一個程式,實現查詢一個字串中的特定字元,並將其刪除.

8樓:老馮文庫

一、演算法描述。

逐個比較字串source中的字元,若當前i位置的字元等於待刪除字元ch,則i+1..len-1之間的子串整體前移;如此反覆,直到所有待刪除字元都找到並被刪除為止。

二、操作過程。

三、參考程式。

#include

#include

/* 移除字串source中的所有ch字元 */void remove(char *source, char ch);

void main()

/* 移除字串source中的所有ch字元 */void remove(char *source, char ch)source[j-1] =0';}四、執行測試。

請輸入一個字串:how are you?

請輸入待刪除字元:o

新的字串:hw are yu?

9樓:網友

char chr[5] =abccd";

char chr1[1] =c";

int j=0;

for(int i =0;i<5;i++)char chrnew[j];

int m=0;

for(int k =0 ; k<5;k++)此時獲得的chrnew就是新的刪除之後的字串了基本型別中不支援刪除操作,所以實際上就是一個新的字串。

10樓:幫個忙好不

#include

#include

main()

for(j=pos;ja[strlen(a)-1]='0';

printf("%s",a);

printf("退出輸入0,繼續輸入1:")

scanf("%d",&y);

if(y==1)

scanf("%c",&ch);

if(y==0)

break;}

11樓:網友

挑出其中需要的字元存回來就行了。

#include ""

#include ""

#include ""

void delchar(char *str,char m)int len=strlen(str);

int i,j=0;

char *p=(char *)malloc(len*sizeof(char));

memset(p,0,len);

for(i=0;iif(*(str+i)!=m)*(p+j++)str+i);

memset(str,0,len);

strncpy(str,p,strlen(p));

free(p);

int main()

char str[100]=;

char del;

scanf("%s %c",str,&del);

delchar(str,del);

puts(str);結果:

12樓:匿名使用者

這個比較簡單,先strchr查詢下,然後memmov就可以了。

13樓:默痕

不知道樓主問題是否解決,我最近也在學習這部分知識,遇到了這道題,這是我的**,希望能幫助到大家。如果有錯,還望大家指出並海涵。

c語言程式設計 由鍵盤任意輸入一個字串和任一個字元,要求從該字串中刪除所指定的字元

c語言 刪除字串中的指定字元'*',要求用指標,謝謝~

14樓:網友

第一步,求字串中有多少個*,隨便求這個字串的長度第二步。申請一塊空間,大小為:字串總長度減去*的個數第三步,for(i=0;i

c語言如何刪除一串字串中指定的字串

15樓:海闊天崩

#include#includeintmain()elseprintf("要刪除字字串未找到!")return0;}

C語言字串問題,C語言字元陣列與字串問題

字串初始化,如果逐個賦值的話,系統不是會自動新增 0 嗎不是。圖一就是長度為4的陣列,圖二長度為5圖三會是新增 0,但是是會把後面所有的都設為 0因為圖一和圖四不以 0結尾,所以不能用strlen和strcmp,會越界 圖四也可以用char str 4 stop 這樣賦值。如果不手動加長度就會是5了...

C語言,利用指標編寫程式 刪除字串中的某字元

墨汁諾 p,q是指標,p,q表示p,q指向的地址儲存的字元。是自增運算子,q p表示將當前p指向的地址儲存的值賦值給q指向的地址,賦值完成後q 即q指向下一位地址。如果還沒有理解的話可以用例項來分析一下,對於字串s abcabc 刪除字元 a 簡單設s起始位置為0,則s 0 a s 1 b s 2 ...

c語言字串問題

首先字串定義是 char c 用指標 而不是char c 這樣是單個字元定義了。其次字串賦值要加上雙引號 即c 0326 最後輸出用s d 是整型輸出了。0362是8進位制數 以0開頭 轉化為十進位制是242。char 佔一個位元組 型別的範圍是 128 127,242超過了char的表達範圍。所以...