當前位置:首頁 » 編程語言 » c語言刪除指定字元

c語言刪除指定字元

發布時間: 2022-12-21 03:55:49

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;

}

運行結果:


(1)c語言刪除指定字元擴展閱讀:

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

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

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

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

㈡ 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語言如何實現刪除字元串中的字元

C語言刪除字元串中指定字元可以參考下面的代碼:

#include<stdio.h>

int main

{

char * fun(char * s);

char arg[] = "hello.cgi?name1=value1&name2=value2";

printf("This value :%s ",fun(arg));

getchar();

return 0;

}

char * fun(char * s)

{

char *s1 = s; //s1指向字元串首地址

while ((*s != '?') && (*s != 0)) //字元不為結束符或者不為?,指向下一個字元

s++;

*s = 0; //將這個字元置為結束符

return s1;

};

(3)c語言刪除指定字元擴展閱讀:

C語言isupper()函數:判斷一個字元是否是大寫字母

C語言isspace()函數:判斷一個字元是否是空白符

C語言isprint()函數:判斷一個字元是否是可列印字元

C語言islower()函數:判斷一個字元是否是小寫字母

C語言ldexp()函數:返回x乘以2的exponent次方(次冪)的值

C語言ldiv()函數:求兩個數的商和余數(針對long類型)

C語言ceil()函數:求不小於x的最小整數(向上取整)

C語言floor()函數:求不大於x的最大整數(向下取整)

double atof(char *nptr) 將字元串nptr轉換成浮點數並返回這個浮點數

double atoi(char *nptr) 將字元串nptr轉換成整數並返回這個整數

㈣ 怎麼在c語言字元數組中刪除一個字元

字元數組中刪除指定字元的方法:
輸入一個字元串,以回車結束
輸入指定字元
定義一個遍歷字元串的下標變數和一個新的字元串下標變數
循環遍歷字元串,
如果當前字元與指定字元不同,則將當前字元寫入新下標位置,新下標+1
(相同則不處理)
遍歷下標+1檢測下一個
遇到字元串結束符,結束循環
循環結束後,新下標位置字元串結束符
輸出新的字元串
參考代碼:

㈤ 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語言刪除指定字元

#include<stdio.h>//原頭文件不對
intmain()
{
charstr[80];
charc;
inti,j;
intlen;//字元串長度
gets(str);
scanf("%c",&c);//指定刪除的字元
for(len=0;str[len]!='';len++);
for(i=len;i>=0;i--)
{
if(str[i]==c)//字元串中有某個字元等於我們需要刪除的字元
{
for(j=i;j<=len+1;j++)//這循環把要刪除的字元後面所有字元(包括結束符都前移一位)
str[j]=str[j+1];
}
}
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(){
char a[50],ch;
int i,j;
printf("輸入字元串:");
scanf("%s",a);
fflush(stdin);
printf("輸入要刪的字元:");
scanf("%c",&ch);
for(i=0,j=0;i<strlen(a);i++)
if(a[i]!=ch)
a[j++]=a[i];
a[j]='\0';
puts(a);
return 0;
}

㈨ 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'。

熱點內容
安卓nba2k18什麼時候出 發布:2025-05-15 04:38:42 瀏覽:391
王者安卓轉蘋果為什麼顯示失敗 發布:2025-05-15 04:35:49 瀏覽:16
手機優酷緩存視頻格式 發布:2025-05-15 04:13:45 瀏覽:209
公益電影分鏡頭腳本插畫 發布:2025-05-15 04:08:37 瀏覽:961
數據壓縮編碼 發布:2025-05-15 03:58:44 瀏覽:725
java字元為空 發布:2025-05-15 03:57:11 瀏覽:547
速訊安卓哪裡下載 發布:2025-05-15 03:55:02 瀏覽:48
緩存區數據讀寫原理 發布:2025-05-15 03:39:57 瀏覽:585
編譯器生成的是二進制文件嗎 發布:2025-05-15 03:38:42 瀏覽:955
運營為什麼區分ios和安卓 發布:2025-05-15 03:30:02 瀏覽:630