當前位置:首頁 » 編程語言 » c語言字元串刪除指定字元描述
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言字元串刪除指定字元描述

發布時間: 2023-03-19 17:57:08

c語言「在字元串中刪除指定的字元」怎麼編寫程序

從字元數組中刪除特定的字元,即輸入要刪除的指定字元,利用for循環找到非指定字元,將非指定字元輸出即可。以下為具體的實現方法:

#include<stdio.h>

int main()

{

char str[100],c;

int j,k;

printf("please input a string:");

gets(str);

printf(" Enter a character:");

c=getchar();

for(j=k=0;str[j]!='';j++)

if(str[j]!=c)

str[k++]=str[j];

str[k]='';

printf(" %s",str);

}

<pre name="code" class="cpp"睜毀>please input a string:wqeqwe

Enter a character:w

qeqePress any key to continue

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

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

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

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

二、設計思路:

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

2、用gets函數輸入數組a的值,並利用for循環將數組a 到 數組b。

3、利用for循環,令pos位的數組b元素賦值到a。

三、實現代碼如下:

(2)c語言字元串刪除指定字元描述擴展閱讀

gets()函數用來從標准輸入設備(鍵盤)讀取字元串直到換行符結束,但換行符會被丟棄,然後在末尾添加''字元。其調用格式為:gets(s),其中s為字元串變數(字元串數組名或字元串指針)。

gets()函數讀取到 (我們輸入的回車)於是停止讀取,但是它不會把 包含到字元串裡面去。然而,和它配合使用的puts函數,卻在輸出字元串的時候自動換行。

gets(s) 函數中的變數s為一字元串指針。如果為單個字元指針,編譯連接不會有錯誤,但運納仿納行後內存溢出錯誤。寬字元版本,當使用unicode寬字元文本時,使用這個函數 _getws();在C11標准中被刪除,可用C標准庫中的fgets代替.

③ c語言程序中 從字元串s中刪除指定的字元c.

c語言從字元串s中刪除字元c:

#include<stdio.h>

/*從字元串S中刪除字元c*/

voidsqueeze(char[],char);

intmain()

#include<stdio.h>

gets(s);

printf("輸入需要刪除的指定字元ch:

");

ch=getchar();

for(i=j=0;s[i]!='';i++)

if(s[i]!=ch)s[j++]=s[i];

s[j]='';

printf("刪除字元

%c

之後字元串為:

%s ",ch,s);

}

字元串在存儲上類似字元數組

它每一位單個元素都是能提取的,字元串的零位是它的長度,如s[0]=10,這提供給我們很多方便,例如高精度運算時每一位都能轉化為數字存入數組。

通常以串的整體作為操作對象,如:在串中查找某個子串、求取一個子串、在串的某個位置上插入一個子串以及刪除一個子串等。兩個字元串相等的充要條件是:長度相等,並且各個對應位置上的字元都相等。設p、q是兩個串,求q在p中首次出現的位置的運算叫做模式匹配。串的兩種最基本的存儲方式是順序存儲方式和鏈接存儲方式。

以上內容參考:網路-字元串

④ C語言刪除字元串中的某個特定字元!

*q=*p;是讓字元串末尾為'\0'。

當然是輸出s。
分析一下:
q用來指向s中下一個插入位置,p用來遍歷s的各字元。開始q和p都指向s的第一個字元。

如果p指向的字元不是要刪除的字元,就將它賦給q指向的字元,並使q指向下一個位置,這是通過*q++=*p;實現的;如果p指向的字元是要刪除的字元,跳過它,不將它復制給q指向的位置。接著令p指向下一個字元(無論是否執行了*q++=*p;語句)。for結束後p指向'\0',q指向的字元前面是刪除了del_x後剩下的字元,最後執行*q=*p;令字元串末尾為'\0'。

⑤ C語言 刪除字元串中的指定字元'*',要求用指針,謝謝~

#include<stdio.h>

intmain()

charstr[100];

char*p,*q;

charc;

gets(str);

c=getchar();

for(p=str,q=str;*p!='\0';p++)//用指針*p去提取str中每一個元胡悉素,用指針*q去刪除str中需要刪除的元素

if(*p!=c)

*(q+旁頃+)=*p;

*q=*p;

puts(str);

return0;

(5)c語言字元串刪除指定字元描述擴展閱讀:

其它方法:

#include<stdio.h>

intmain()

charstr[100];

char*q;

charc;

inti;

gets(str);褲啟乎

c=getchar();

for(i=0,q=str;str[i]!='\0';i++)

if(str[i]!=c)

*(q++)=str[i];

*q=str[i];

puts(str);

return0;

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

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

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

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

二、設計思路:

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

2、用gets函數輸入數組a的值,並利用for循環將數組a 到 數組b。

3、利用for循環,令pos位的數組b元素賦值到a。

三、實現代碼如下:

具體執行結果同上。

⑦ C語言編程:在一個指定的 字元串中刪除指定的 字元,並輸出該字元串。

#include <stdio.h>

#include <string.h>

int main(int argc, char **argv)

{

int num = 0;

for (int i = 0; i <= strlen(argv[1]); i++)

if (argv[1][i] != argv[2][0])

{

argv[1][num] = (i == strlen(argv[1])) ? '' : argv[1][i];

num++;

}

printf("%s ", argv[1]);

return 0;

}

運行結果:


(7)c語言字元串刪除指定字元描述擴展閱讀:

return 0代表程序正常退出。return是C++預定義攜虧的語句,它提供了終止函數執行的一種方式。當return語句提供了一個值時,這個值就成辯衫神為函數的返回值。

return語句用來結束循環塌隱,或返回一個函數的值。

1、return 0,說明程序正常退出,返回到主程序繼續往下執行。

2、return 1,說明程序異常退出,返回主調函數來處理,繼續往下執行。return 0或return 1對程序執行的順序沒有影響,只是大家習慣於使用return(0)退出子程序而已。