[英]Comparing values in two different arrays for equality
我正在尝试比较两个不同数组的所有值之间的相等性,除了另一个数组中相同位置的数组:例如 array1[0]==array2[1] 但不是 array1[0]==array2[0 ] 我遇到了一点麻烦,我知道一定有比我正在做的更简单的方法,这是:顺便说一下,这是在 c 中
for(int r=1; r<4;4++){
if(choicearray[r]==comparray[r+1]||choicearray[r]==comparray[r-1] || choicearray[r]==comparray[r+2]|| choicearray[r]==comparray[r-2] || choicearray[r]==comparray[r-3] || choicearray[r]==comparray[r+3]){
printf("w ");
e++;
}
}
两个数组都包含 4 个字符
首先请记住,数组的索引从 0 开始(在您的情况下为 0 到 3)。
您必须遍历第一个数组,然后遍历第二个数组。
int n=4;
for(int r=0; r<n; r++){
for(int q=0; q<n; q++){
if(arrayA[r]==arrayB[q] && q!=r)
printf("w ");
}
}
条件q!=r
检查是否只比较不同的索引。
对于初学者,您可以尝试使用两个循环,每个循环都控制一个数组的迭代,如下所示:
for (int r=0; r<4;r++){
for (int s=0; s<4;s++){
if (s!=r){
//do your comparing
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.