6-2 指針選擇法排序
源代碼:
void sort(int *x,int n)
{
int i,t,min = (n-1);
for(i = 0;i < n;i++)
{
if(x[min] > x[i])
{
t=x[min];
x[min]=x[i];
x[i]=t;
}
}
if(n > 0)
{
n--;
sort(x,n);
}
}
規范流程圖如下:
注意:
1)輸入輸出是平行四邊形,不是長方形。
2)只有判斷框可以有1個入口2個出口,其余都是1個入口1個出口,當有多個語句跳入時,將多個跳入匯總成為一個入口。
下面這條求最大值的流程圖,犯了兩個錯誤:菱形框有2個輸入,一條i++語句畫成了兩條。其中菱形框的兩個輸入正確畫法如上圖。
函數調用的流程圖
建議主調函數和被調函數分開畫,一個函數一個流程圖。
