#include
#include
#include
#include
int main(void)
{
int a[10];
int f[10] = { 0 };
int n = 0;
srand(time(NULL));
printf("┏━┳━┳━┳━┳━┳━┳━┳━┳━┳━┓");
printf("\n");
while (n<10)
{
int m = rand() % 100;
if (f[m]) continue;
a[n++] = m;
f[m] = 1;
}
for (n = 0; n < 10; n++)
printf("┃%2d", a[n]);
printf("┃\n┗━┻━┻━┻━┻━┻━┻━┻━┻━┻━┛");
int sum=0;
sum = sum+a[n];
float avg;
avg = (float)sum / n;
printf("\n%.2f", avg);
printf("\n");
_getch();
return 0;
}
sum = sum+a[n];//此时n=10,已越界;而且你也只加了一个值
应该循环做加:
for (n = 0; n < 10; n++)
sum = sum+a[n];
int m = rand() % 100;意思是m是一个100以内的随机数,但是f的大小只有10,会越界的。