问题描述
- C语言冒泡排序的小问题
-
void bubblesort(intArr*ia){
int i,j,t,n=ia->cur;
for(i=n;i>2;i--)
for(j=1;j?if(ia->pt[j]>ia->pt[j-1]){
t=ia->pt[j-1];
ia->pt[j-1]=ia->pt[j];
ia->pt[j]=t;
}
上面这段是算法其中的排序部分,对长度为ia->cur的数组排序,结果似乎有点问题,结果后两位有时错位,另外结果是降序,但代码似乎是升序,各位大神给点建议
解决方案
下标j的值大于j-1时,交换。就是降序啊。你看看是不是要>=2呢
解决方案二:
C语言之冒泡排序
C语言冒泡排序
C语言_冒泡排序
时间: 2024-12-22 03:04:46