这段代码有问题,一段数字排序的问题
#include<stdio.h>#define NUM 10
main()
{
int a[NUM],i,j,r,temp;
printf("Please input %d number\n",NUM);
for(i=0;i<NUM;i++)
scanf("%d",&a[j]);
for(i=0;i<=NUM-1;i++){
r=i;
for(i=i+1;j<NUM;j++)
if(a[i]<a[r])
r=j;
if(r!=i){
temp=a[i];
a[i]=a[r];
a[r]=temp;
}
}
printf("The array after sort:\n");
for(i=0;i<=NUM;i++)
printf("%5d",a[i]);
printf("\n");
}
里面j没有定义就使用了。有问题。要怎么改。
if(a[i]<a[r])
为甚么要r=j;