㈠ c語言中如何判斷字元串相等
可以使用庫函數strcmp判斷,具體如下:
strcmp是C語言比較字元串的庫函數,形式為int
strcmp(char
*a,
char
*b);
該函數會對a和b的每個字元,按照ascii碼值比較,如果二者完全相同返回0;如果a的ascii碼值先出現較大者,會返回1;否則返回-1。
所以,要判斷字元串相等,可以使用。
(1)c語言怎麼判斷相等問題擴展閱讀:
關於上述strcmp()函數比較字元串的例子
#include
#include
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.
\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
equal
to
str_3.\n");
return
0;
}
參考資料來源:字元串-網路
㈡ C語言怎麼比較兩個字元串相等
C語言比較字元串相等 用庫函數strcmp
需要引用頭文件string.h
方法為
strcmp(s1, s2);
如果s1 s2相等,則返回0
如果s1<s2 返回-1
s1>s2 返回1
比較時按字典序
㈢ C語言如何判斷兩個數組是否相等問題
只能每個元素分別判斷了。
for ( int i=0;i<5;i++ )
{
if( a[i] != b[i] )
break;
}
if(i<5)
printf("不相等\n");
else
printf("相等\n");
㈣ C語言如何寫才能判斷兩個數組相等
#include<stdio.h>
intmain()
{
inti=0;
intj=0;
intarr1[]={1,2,3,4,5};
intarr2[]={1,2,7,4,9};
for(i=0;i<sizeof(arr1)/sizeof(arr1[0]);i++)
{
for(j=0;j<sizeof(arr2)/sizeof(arr2[0]);j++)
{
if(arr1[i]==arr2[j])
{
printf("存在相同元素");
break;
}
}
break;
}
return0;
}
(4)c語言怎麼判斷相等問題擴展閱讀
C++比較兩個數組是否相等
constintSIZE=5;
intarrayA[SIZE]={5,10,15,20,25};
intarrayB[SIZE]={5,10,15,20,25};
boolarraysEqual=true;//標志變數
intcount=0;//循環控制變數
//確定元素是否包含相同的數據
while(arraysEqual&&count<SIZE)
{
if(arrayA[count]!=arrayB[count])
arraysEqual=false;
count++;
}
//顯示合適的消息
if(arraysEqual)
cout<<"Thearraysareequal. ";
else
cout<<"Thearraysarenotequal. ";
㈤ 用c語言如何判斷這兩個數組是相等的 int a[5]={1,2,3,2,5}; int b[5]={1,2,3,2,5};
先判斷長度是不是相等
如果相等
用數組一中每個元素去分別和二中的比,只要在二中都能找到相等的,那個元素就被標記一下,下次不和他比
最後二中的都被標記了,說明完全相等
你自己實現吧
我感覺這個想法應該沒錯呢~~有什麼不對的望提出啊~~
㈥ c語言中怎樣判斷兩字元相等
通過==方式進行判斷,==是比較,可以比較字元,數字值等等。
舉例:
chars1='c';//定義一個字元變數s1,內容是c
chars2='d';//定義一個字元變數s2,內容是d
if(s1==s2){//通過==判斷是否相同
//相等
}
㈦ C語言中判斷兩個數組內容是否相同!
C語言有個函數
memcmp是用來進行內存比較的
extern
int
memcmp(void
*buf1,
void
*buf2,
unsigned
int
count);
if(0==memcmp(ID,ID1,20))
//ID1等於ID2
{
}
先要明確運算符按優先順序不同分類,《C程序設計》運算符可分為15種優先順序,從高到低,優先順序為1 ~ 15,除第2.13級和第14級為從右至左結合外,其它都是從左至右結合,它決定同級運算符的運算順序。
產生來源
在C語言中, 數組屬於構造數據類型。一個數組可以分解為多個數組元素,這些數組元素可以是基本數據類型或是構造類型。因此按數組元素的類型不同,數組又可分為數值數組、字元數組、指針數組、結構數組等各種類別。
關於可變長數組(VLA)的問題:原來的C89標准中是不允許可變長數組出現的,但是在C99標准中,加入了對VLA的支持,但是支持的編譯器不多,而且由於棧溢出的安全問題,沒有太多的人敢用這個可變長數組,所以在C11標准中又把它規定為可選實現的功能了。
以上內容參考:網路-數組
㈧ C語言 判斷輸入字元相等的問題
你可以試試 定義一個變數來接收getchar();
int key;
key = getchar();
printf ("%c",key);
然後你輸入 「- 」負號,看看符號的值是多少。
這樣你再用這個值來和getchar()做比較判斷。
㈨ C語言中double類型的兩個數怎麼判斷相等
result
==
num1
/
num2
首先要改成雙等號,單等號是賦值的意思
其次,浮點數在計算機中並不能精確的表示,因此,在判斷浮點相等
時可以根據自己的需要設定一個誤差范圍,比如,認為相差在0.0001
以內就是相等。
#include
<math.h>
//fabs需要的頭文件
if
(fabs(result
-
num1
/
num2)<0.0001)
㈩ c語言怎麼樣判斷分數相等
這個問題是這樣的。
C語言中浮點數字有自己的精確度,判斷相等的時候絕對不能用「if (a == b)」
其中 a、b是賦值的浮點型。而且甚至這樣比較都是錯誤的寫法(是很不規范的,在編程時很容易出問題):"if (a == 0)"其中a是浮點型數。
解決的辦法是設置一個很小的數「float MIN_NUM = 0.00001」如 2 樓回答的,只有類似下面的比較才是正確可行的:
float a,b;
a = ...
b = ...
if ((-MIN_NUM) < (1.0/a - 1.0/b) < MIN_NUM)/*判斷a和b相等*/
{
......
}
if (MIN_NUM < a < MIN_NUM) /*判斷 a 為零*/
{
......
}