大神帮忙看一下,这一语句去掉的话为什么就不对了
程序代码:
#include<stdio.h> #define N 10 int main(void) { int i,j,k,t,a[N],min; for(i=0;i<N;i++) scanf("%d",&a[i]); for(i=0;i<N-1;i++) { k=i;//这一句话 min=a[i]; for(j=i+1;j<N;j++) { if(a[j]<min) { min=a[j]; k=j; } } if(k!=i) { t=a[i];a[i]=a[k];a[k]=t; } } for(i=0;i<N;i++) printf("%d ",a[i]); printf("\n"); return 0; }
加上就没问题,去掉就得不到理想的结果,但是感觉没用啊,求大神解释一下,,本人新手,,