c語言找出不是兩個陣列的共同元素

2022-03-27 09:18:31 字數 5667 閱讀 5702

1樓:gta小雞

#include

int not_in(int num, int* a, int length)

{for(int i=0;i

2樓:

for(i=1;i<=n;i++)

這兩句錯誤,陣列下標是從0開始的,上面這句會導致程式崩潰

for(i=0;i

c語言 輸入兩個陣列 從兩個陣列中找出不同的元素

3樓:似什麼

#include

int main(void)

printf("enter %d numbers for b: ",n);

for(i = 0;i < n; i ++)//a陣列 與 b陣列的元素比較

for(i = 0;i < m;i ++)}if(p == 1)

}//b陣列 與 a陣列的元素比較

for(i = 0;i < n;i ++)}if(p == 1)

}for(i = 0;i < count;i ++)}if(p == 1)

}return 0;}

4樓:匿名使用者

參考#include

void main()

printf("請輸入第2個陣列的10個整數");

printf("\n");

for(i=0;i<10;i++)

for(i=0;i<10;i++)}}

5樓:匿名使用者

#include

int main(void)

scanf("%d",&m);

for(i=0;i

for(i=0;i

else

}if(count!=1)

else

}if(count==0)

printf("沒有共同數");

return 0;}

c語言。找出不是兩個陣列共有的元素。

6樓:杜哥是個小天才

for(int i = 0;i < n.length – 1;i++)

for(i=0;ifor(j=0;jif(a[i] == b[j])

break;

if(j == m)

c[count] = a[i];

count++;

}for(i=0;ifor(j=0;jif(b[i] == a[j])

break;

if(j == n)

c[count] = b[i];

count++;

printf("%d ",count);

for(i=0;iprintf("%d ",c[i]);

思路:第一,陣列定義只需要三個,num1[20],num2[20],num3[20]。

第二,迴圈變數用完就扔,沒必要定義那麼多,i,j足夠。

第三,num1中的元素取出來與num2的一一比較,如果相等則存入num3,你的第三個迴圈寫的就是,只是條件要改,if(num1[a]==num2[b]),把num1[a]存入num3,而且count也是沒用的,題目要求只要你輸出重複數字沒讓你計數。

第四,將num3中的不重複數字輸出,迴圈**如下。

for(int i = 0;i < n.length – 1;i++){ //迴圈開始元素

for(int j = i + 1;j < n.length;j++){ //迴圈後續所有元素

//如果相等,則重複

if(n[i] != n[j]){

不想等,則輸出n[i]

拓展資料

c語言是一門通用計算機程式語言,應用廣泛。c語言的設計目標是提供一種能以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。

儘管c語言提供了許多低階處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的c語言程式可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(微控制器或稱mcu)以及超級電腦等作業平臺。

7樓:知識慧

正確**如下:

#include

int main()

if(j>=n)

}for(i=0;i

if(j>=m)

}printf("%d",c[0]);

for(i=1;i

if(j>=i)

printf(" %d",c[i]);

}printf("\n");

}return 0;

}源**截圖:

8樓:匿名使用者

答主的程式命名方式繁雜,變數符過多

直接暴力破解即可

#include

int main(){

int a[20],b[20],c[100],m,n,i,j,e,h,k;

k=0;

scanf("%d",&m);

for(i=0;i

執行結果如圖所示

9樓:s古靈y精怪

我不知道怎麼改,自己編了一個,你看看吧

#include

void main()

{int a[40];

int b[40];

int c[80];

int n,m,count=0,i,j;

scanf("%d",&n);

for(i=0;i

10樓:匿名使用者

給你思路和建議如何。我覺得你的水平應該夠。

第一,陣列定義只需要三個,num1[20],num2[20],num3[20]。

第二,迴圈變數用完就扔,沒必要定義那麼多,i,j足夠。

第三,num1中的元素取出來與num2的一一比較,如果相等則存入num3,你的第三個迴圈寫的就是,只是條件要改,if(num1[a]==num2[b]),把num1[a]存入num3,而且count也是沒用的,題目要求只要你輸出重複數字沒讓你計數。

第四,將num3中的不重複數字輸出,迴圈**如下。

for(int i = 0;i < n.length – 1;i++){ //迴圈開始元素

for(int j = i + 1;j < n.length;j++){ //迴圈後續所有元素

//如果相等,則重複

if(n[i] != n[j]){

不想等,則輸出n[i]

我覺得你能看懂。

11樓:魔力黃

#include

int main(),d[20] = , e[40];

char ch;

int count1 = 0, count2 = 0;

int i,j,n;

int k =0;

int blank= 0;

int e_num1 = 0, repeat =0;

scanf("%d", &count1);

for(i=0; i <

for(j=0; j

//找出a中獨有元素//

for(i=0; i < count1; i++)}} //再對a取個補集,僅能找出a中獨有的元素,故還需再找處b中獨有的元素。//

//找出b中獨有元素//

for(j=0; j < count2; j++)}}//給e賦第一個值//}}

if(e_num1 ==0)}}

}//為e賦上後續的值//

if (e_num1 ==1)

}if (repeat == 0)

repeat = 0; //重置repeat,為進行下一個數的判定做準備//}}

for(j =0; j

repeat = 0; //重置repeat,為進行下一個數的判定做追備//}}

}//開始輸出e//

for (n=0; n

return 0;}

12樓:匿名使用者

同學你是做oj的嗎?

c語言中,尋找兩個陣列中相同的元素的個數,與元素

13樓:小兆

if(d>-1)

14樓:匿名使用者

int search(int *apt,int n,int key) }

printf("the number is:\n",q);

for(i=0;i

15樓:匿名使用者

你把mian()函式寫錯了,你寫成mian了,應該改成int main().

改好後的效果如圖:

16樓:匿名使用者

mian() --> int main()

17樓:

#include

int search(int *apt,int n,int key)}printf("the number is:\n",q);

for(i=0;i

c語言 關於兩個陣列求相同或不同元素的問題!

18樓:匿名使用者

第一個可以用string.h裡面的strcmp函式;

第二個用兩次兩個巢狀的for迴圈就可以了,外層的作為將要取出元素的陣列,內層的作為比較陣列,將不相同的數放到第三個陣列裡。然後反過來再做一次。

19樓:

char a[10];

char b[10];

int c[26];//每個字元的出現次數留下記錄void fun(char a,int c)呼叫兩次fun

輸出c中是1對應的字元 c[i]如果是1就輸出i+'a'}

如何查詢到兩個陣列中不相同的元素

20樓:司馬刀劍

string array1=new string;

string array2=new string;

string arraymax = array1.length>array2.length?array1:array2;

string arraymin = array1.length

vector vec = new vector();

hashset set = new hashset();

for(int i=0; i

for(int i=0; i

最後vec就是你想要的。

我又看了一下hashset的源**。

發現它用了hashmap,hashmap還是要一個一個比較,這樣饒了好大一個彎。

看來我上面的**反倒弄巧成拙。

你還是兩個陣列雙重迴圈吧。

不過我覺得hashset至少能過濾某一個陣列中相同的元素

c語言中判斷兩個陣列內容是否相同

c語言有個函式memcmp是用來進行記憶體比較的extern intmemcmp void buf1,void buf2,unsigned intcount if 0 memcmp id,id1,20 id1等於id2 先要明確運算子按優先順序不同分類,c程式設計 運算子可分為15種優先順序,從高到...

c語言陣列刪除問題,C語言中刪除一個陣列元素

可是那要是刪除陣列最後一個元素要怎麼弄?忽略最後一個元素,陣列長度變小一個就可以了,不用動這個資料。include void del num int a int n,int cnt else p a i cnt flag int main int n cnt cnt 8 8個元素 scanf d n...

c語言如何寫才能判斷兩個陣列相等

include intmain inti 0 intj 0 intarr1 intarr2 for i 0 ifor j 0 jif arr1 i arr2 j printf 存在相同元素 break break return0 擴充套件資料c 比較兩個陣列是否相等 constintsize 5 i...