#include <stdio.h>
int main()
{
char s1[] = "01100001111010110110101111001011";
char s2[] = "11100111011010100110110101000001";
int i;
for (i = 1; i <= 8; i++) {
int d = dist(s1, s2);
printf("%d %d\n", i, d);
}
return 0;
}
int dist(char s1[], char s2[])
{
int d;
int i;
for (i = 0; i < 32; i++) {
if (s1[i] != s2[i]) {
d += 1;
}
}
return d;
}
Почему только первая итерация дает 10, а остальные разные числа, причем меняющиеся?