#include "stdafx.h"
int main(int argc, char* argv[])
{
int a[10]={5,7,9,5,2,5,7,9,8,2},n=10;
int k=0;
for(int i=0; i
for(int j=i+1;j
a[i-k]=a[i]; //这里改成a[j-k]=a[i]; 试试!
else
k++;
}
n=n-k;
for(i=0; i
printf("\n");
return 0;
}
是不是找重复数?
void repetition(int number)
{
int array[10] = {0};
int i = 0,flag = 0;
while (number != 0) {
array[i++] = number % 10;
number /= 10;
for (int j = 0; j < i-1; j++) {
if (array[i -1] == array[j]) {
flag = i-1;
break;
}
}
if (flag != 0) {
break;
}
}
printf("有重复数:%d", array[flag]);
}
错误很明显,内层for循环里i的值会小于k的值,a[i-k]就报运行时错了