【发布时间】:2020-10-21 02:13:39
【问题描述】:
我写了一个选择排序算法,但是没有用。我找不到我的错。任何人都可以帮助我吗?
#include
int main () {
int array[100],i,j,position,size,swap;
printf("Enter number of integers\n");
scanf("%d",&size);
printf("Enter %d integers\n",size);
for(i=0;i<size;i++){
scanf("%d",&array[i]);
}
for(i=0;i<size;i++){
position=i;
for(j=i;j<size;j++){
if(array[position]>array[j]){
position=j;
}
if(position!=i){
swap=array[i];
array[i]=array[position];
array[position]=swap;
}
}
}
printf("Sorted list in ascending order\n");
for(i=0;i<size;i++){
printf("%d\n",array[i]);
}
return 0;
}
【问题讨论】:
-
“不起作用”不是技术诊断。您需要更深入地挖掘并解释它不希望做什么,和/或它应该做什么。 您是否在调试器中单步执行过?
-
将交换部分移到内循环之后。
-
抱歉我正在编辑
-
已使用后输入。看到的输出。预期输出。
标签: c sorting select selection-sort