當前位置:首頁 » 編程語言 » c語言判斷數組元素相等
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言判斷數組元素相等

發布時間: 2022-05-28 06:19:55

c語言如何判斷兩個數組是否相等問題

只能每個元素分別判斷了。
for ( int i=0;i<5;i++ )
{
if( a[i] != b[i] )
break;
}
if(i<5)
printf("不相等\n");
else
printf("相等\n");

Ⅱ C++中怎樣判斷兩個字元型數組元素相等

直接用C++庫函數strcmp(char* a,char* b)就可以比較出兩字元串是否相等,對於字元型數組也是一樣的,只要分別帶入數組地址就可以了。函數返回0 ,表示相等;大於0表示字元串a大於字元串b;反之小於則串a小於b。

而這里的庫函數做的比較是一次比較字元串中相同位置的單個字元的ASCII得出的結果。你也可以自己用C++代碼實現這個比較,下面我隨便寫了一個函數來單個單個的比較,只判斷是否相等,返回1(true)為相等,返回0(false)為不相等。

具體代碼如下:

char a[]={a,b,c};

char b[]={a,b,c};

bool function(char a[],char b[])

{int n = 0;

if(strlen(a) != strlen(b)) //判斷兩數組/字元串的長度是否相等,不相等就肯定不會有數組/字元串相等了

return 0;

else

{while(a[n]!='' && b[n]!='')

{if(a[n] == b[n])

n++;

else

return 0; }}

return 1;}

(2)c語言判斷數組元素相等擴展閱讀

C++語言特點:

1、支持數據封裝和數據隱藏

在C++中,類是支持數據封裝的工具,對象則是數據封裝的實現。C++通過建立用戶定義類支持數據封裝和數據隱藏。

在面向對象的程序設計中,將數據和對該數據進行合法操作的函數封裝在一起作為一個類的定義。對象被說明為具有一個給定類的變數。每個給定類的對象包含這個類所規定的若干私有成員、公有成員及保護成員。

完好定義的類一旦建立,就可看成完全封裝的實體,可以作為一個整體單元使用。類的實際內部工作隱藏起來,使用完好定義的類的用戶不需要知道類是如何工作的,只要知道如何使用它即可。

2、支持繼承和重用

在C++現有類的基礎上可以聲明新類型,這就是繼承和重用的思想。通過繼承和重用可以更有效地組織程序結構,明確類間關系,並且充分利用已有的類來完成更復雜、深入的開發。新定義的類為子類,成為派生類。它可以從父類那裡繼承所有非私有的屬性和方法,作為自己的成員。

3、支持多態性

採用多態性為每個類指定表現行為。多態性形成由父類和它們的子類組成的一個樹型結構。在這個樹中的每個子類可以接收一個或多個具有相同名字的消息。當一個消息被這個樹中一個類的一個對象接收時,這個對象動態地決定給予子類對象的消息的某種用法。

繼承性和多態性的組合,可以輕易地生成一系列雖然類似但獨一無二的對象。由於繼承性,這些對象共享許多相似的特徵。由於多態性,一個對象可有獨特的表現方式,而另一個對象有另一種表現方式。

Ⅲ 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;

}

(3)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語言中如何判斷兩個數組內容是否相同

C語言有個函數
memcmp
是用來進行內存比較的
extern
int
memcmp(void
*buf1,
void
*buf2,
unsigned
int
count);
if(0==memcmp(ID,ID1,20))
//ID1等於ID2
{
}

Ⅳ 求:C語言中比較兩個數組的內容是否相同

如下圖所示:

Ⅵ c語言數組元素判斷是否相同以及相同的個數

//下面的演算法還可以優化,就留給樓主自己思考:
#include<stdio.h>
#include<stdlib.h>

#defineARR_MAX6

staticinttemp[ARR_MAX];
booltemp2[ARR_MAX];

voidreset(){//初始化靜態區變數temp與temp2
for(inti=0;i<ARR_MAX;i++){
temp[i]=1;
temp2[i]=true;
}
}

intrepeat_e(inta[ARR_MAX]){
reset();
//跳躍式演算法,加快檢索速度
for(inti=0;i<ARR_MAX;i++){
if(!temp2[i])continue;
for(intj=i+1;j<ARR_MAX;j++){

if(a[i]==a[j]){
temp[i]++;
temp2[j]=false;
}
}
}

//尋找最值演算法
int_max=1;
inttarget_index=-1;//目標索引
for(inti=0;i<ARR_MAX;i++){
if(temp[i]>_max){
_max=temp[i];
target_index=i;
}
}

returntarget_index>-1?a[target_index]:-1;
}

intmain(intargc,char*argv[])
{
intarr[ARR_MAX]={0};
scanf("%d%d%d%d%d%d",&arr[0],&arr[1],&arr[2],&arr[3],&arr[4],&arr[5]);
inttarget_value=repeat_e(arr);

if(target_value>-1){

int_count=0;

for(inti=0;i<ARR_MAX;i++){
if(arr[i]==target_value){
printf("x[%d],",i+1);
_count++;
}
}
printf(",相同數=%d ",_count);

}

system("pause");
return0;
}

Ⅶ 用c語言如何判斷這兩個數組是相等的 int a[5]={1,2,3,2,5}; int b[5]={1,2,3,2,5};

先判斷長度是不是相等
如果相等
用數組一中每個元素去分別和二中的比,只要在二中都能找到相等的,那個元素就被標記一下,下次不和他比
最後二中的都被標記了,說明完全相等

你自己實現吧
我感覺這個想法應該沒錯呢~~有什麼不對的望提出啊~~

Ⅷ c語言如何判讀一個數組里的數是否存在相等的

#include<stdio.h>

inthasEqual(inta[],intn){
inti,j;
for(i=0;i<n-1;++i){
for(j=i+1;j<n;++j)
if(a[i]==a[j])return1;
}
return0;
}

intmain(){
inta[]={36,45,12,35,26,98,54,21,36,58};
intn=sizeof(a)/sizeof(a[0]);
intan=hasEqual(a,n);
if(an)printf("有。 ");
elseprintf("沒有。 ");
return0;
}

Ⅸ 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語言判斷兩個長度不等的字元數組是否相等的方法

用strcmp阿,不管長度是否相等都能用。
原型:extern
int
strcmp(const
char
*s1,const
char
*
s2);
用法:#include
<string.h>
功能:比較字元串s1和s2。
一般形式:strcmp(字元串1,字元串2)
說明:
當s1<s2時,返回值<0
當s1=s2時,返回值=0
當s1>s2時,返回值>0
即:兩個字元串自左向右逐個字元相比(按ASCII值大小相比較),直到出現不同的字元或遇'\0'為止。