C言語にて、A、Bという2つの配列を用意し、Aの配列の中身を適当に決め、
Bの配列の中身はrand()を使用してランダムに決め、
AとBの要素を1つずつ比較し、一致した部分を残し、一致しなかった部分は再度
rand()を使用してこれを5個すべて一致するまで繰り返すプログラムを作成したいです。
ソースの一部分ですが、
while(count < 5){ //5個一致するまで
for(i=0;i<5;i++){
if(B[i] == A[i]){
C[i] = B[i];
count = count + 1; //1つ一致したらカウント+1
}else{
C[i] = rand() % 10;
}
for(i=0;i<5;i++){
printf("%d", C[i]);
printf("\n");
}
近づいていく様子がわかるようにBの要素を出力していったのですが、
出力結果はAの要素にまったく近づいていかず、常にランダムの5桁が出力されます。
そしてcountに関しても一致していないのに常にcount+1されてしまいます。
配列の比較の仕方やcountの仕方など正しくない部分についてのアドバイスを
お願いします。