找出不是兩個數組共有的元素


題目:

核心代碼:
for (i = 0; i < na; i++) {
for (j = 0; j < nb; j++) {
if (a[i] == b[j]) {
break;
}
}
if (j == nb) {
c[k] = a[i];
k++;
}
}
for (i = 0; i < nb; i++) {
for (j = 0; j < na; j++) {
if (b[i] == a[j]) {
break;
}
}
if (j == na) {
c[k] = b[i];
k++;
}
}
printf("%d", c[0]);
for (i = 1; i < k; i++) {
for (j = 0; j < i; j++) {
if (c[i] == c[j]) {
break;
}
}
if (j == i) {
printf(" %d", c[i]);
}
}
流程圖:

難點:尋找兩個數組的不共有的數。
解決方法:運用for的嵌套循環分別對兩個數組逐一判斷。
1.先是以第一個數組的長度作為外循環的判斷條件,以第二個數組的長度作為內循環的判斷條件;
再判斷外循環的值是否在內循環中找到相同的,如果有就跳出內循環,沒有就執行完內循環為止;
再執行第二個判斷,判斷內循環的下標是否等於內循環的判斷條件,如果等於就將外循環的值存入第三個數組。
2.將內外循環的判斷條件交換,再執行一次1的循環。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM