當前位置:首頁 » 編程語言 » c語言字元串相同

c語言字元串相同

發布時間: 2024-07-06 03:35:47

c語言中判斷兩個字元串是否相同的方法

C語言提供了幾個標准庫函數,可以比較兩個字元串是否相同。以下是用strcmp()函數比較字元串的一個例子:

#include <stdio. h>
#include <string. h>
void main (void);
void main(void)
{
char* str_1 = "abc" ; char * str_2 = "abc" ; char* str_3 = "ABC" ;
if (strcmp(str_1, str_2) == 0)
printf("str_1 is equal to str_2. \n");
else
printf("str_1 is not equal to str_2. \n");
if (strcmp(str_1, str_3) == 0)
printf("str_1 is equal to str_3.\n");
else
printf("str_1 is not equalto str_3.\n");
}

上例的列印輸出如下所示:
str_1 is equal to str_2.
str_1 is not equal to str_3.

strcmp()函數有兩個參數,即要比較的兩個字元串。strcmp()函數對兩個字元串進行大小寫敏感的(case-sensitiVe)和字典式的(lexicographic)比較,並返回下列值之一:
----------------------------------------------------
返 回 值 意 義
----------------------------------------------------
<0 第一個字元串小於第二個字元串
0 兩個字元串相等 ·
>0 第一個字元串大於第二個字元串
----------------------------------------------------
在上例中,當比較str_1(即「abc」)和str_2(即「abc」)時,strcmp()函數的返回值為0。然而,當比較str_1(即"abc")和str_3(即"ABC")時,strcmp()函數返回一個大於0的值,因為按ASCII順序字元串「ABC」小於「abc」。
strcmp()函數有許多變體,它們的基本功能是相同的,都是比較兩個字元串,但其它地方稍有差別。下表列出了C語言提供的與strcmp()函數類似的一些函數:
-----------------------------------------------------------------
函 數 名 作 用
-----------------------------------------------------------------
strcmp() 對兩個字元串進行大小寫敏感的比較
strcmpi() 對兩個字元串進行大小寫不敏感的比較
stricmp() 同strcmpi()
strncmp() 對兩個字元串的一部分進行大小寫敏感的比較
strnicmp() 對兩個字元串的一部分進行大小寫不敏感的比較
-----------------------------------------------------------------
在前面的例子中,如果用strcmpi()函數代替strcmp()函數,則程序將認為字元串「ABC」等於「abc」。

② c語言中如何判斷兩個字元串相等

可以使用庫函數strcmp判斷,具體如下:

strcmp是C語言比較字元串的庫函數,形式為int strcmp(char *a, char *b);

該函數會對a和b的每個字元,按照ascii碼值比較,如果二者完全相同返回0;如果a的ascii碼值先出現較大者,會返回1;否則返回-1。

所以,要判斷字元串相等,可以使用。

(2)c語言字元串相同擴展閱讀:

關於上述strcmp()函數比較字元串的例子

#include <stdio.h>

#include <string.h>

int main(void)

{

char str_1[] = "abc";

char str_2[] = "abc";

char str_3[] = "ABC";

if (strcmp(str_1, str_2) == 0)

printf("str_1 is equal to str_2. ");

else

printf("str_1 is not equal to str_2. ");

if (strcmp(str_1, str_3) == 0)

printf("str_1 is equal to str_3. ");

else

printf("str_1 is not equal to str_3. ");

return 0;

}

參考資料來源:字元串-網路

③ C語言怎麼編寫:請編寫一個字元串過濾程序,若字元串中出現多個相同的字元,將非首次出現的字元過濾掉。

結果出來了,你看看吧,滿意請採納

#include<stdio.h>
#include<string.h>
voidfinddd(charx[]);

intmain()
{
chara[150];
char*aa;
inta1;
inti;

printf("請輸入任意的字元串:");
gets(a);
finddd(a);
return0;
}

voidfinddd(charx[])//不帶數據返回
{
inti,shu=0;
charaa[100];
intaaa[200]={0};

for(i=0;i<strlen(x);i++)
{
if(aaa[x[i]]==0)
{
aaa[x[i]]=1;
aa[shu++]=x[i];
}
}
aa[shu++]='';

printf("剔除重復字元後的字元串:%s ",aa);
}

熱點內容
學編程需要什麼電腦 發布:2024-07-09 06:43:10 瀏覽:833
矩陣解壓縮 發布:2024-07-09 06:36:55 瀏覽:552
rom只讀存儲器只能讀出內容 發布:2024-07-09 05:56:07 瀏覽:272
java如何創建對象 發布:2024-07-09 05:44:09 瀏覽:868
微站網源碼 發布:2024-07-09 05:32:13 瀏覽:995
java反射獲取註解 發布:2024-07-09 05:23:45 瀏覽:94
安卓如何控制air耳機 發布:2024-07-09 04:57:01 瀏覽:912
unraid私人伺服器搭建 發布:2024-07-09 04:30:19 瀏覽:144
如何使用libevent伺服器 發布:2024-07-09 04:18:28 瀏覽:509
壓縮機油泵 發布:2024-07-09 04:17:02 瀏覽:571