查看單個文章
  #1  
舊 2014-12-25, 06:26 PM
哈啦 的頭像
哈啦 哈啦 目前離線
論壇管理員
 
註冊日期: 2002-05-28
文章: 23,016
預設 有關C語言的冒泡排序法一問

冒泡排序法的程式如止:
# include "stdio.h"
main(){
int i,j,a[5],temp;
for(i=0;i<5;i++)
scanf("%d,",&a[i]);
for(i=0;i<5;i++)
for(j=i+1;j<5;j++)
if(a[i]>a[j])
{temp=a[i];
a[i]=a[j];
a[j]=temp;}
for(i=0;i<5;i++)
printf("%d",a[i]);
printf("\n");
}

紅字的部份我能理解,但如果我將它換成 j=0,結果排序的結果竟然顛倒過來,變成由大往小排序?我想了半天,換成 j=0 雖然有點多此一舉,但邏輯上沒有錯誤啊,怎會結果大轉呢?
__________________
咖啡走路
微博


您是網站站長嗎?歡迎到站長俱樂部 一起討論吧。
按我看版規
code.club
回覆時引用此篇文章