C語言 12.0

若有偏頗之處,還望海涵;
在上一個章節中,講的偏移量問題,在這裏進行一些解釋;
若是是一維數組;array[5]
在這個數組中含有5個元素;他們的下標是;0,1,2,3,4;
array[5]的偏移量是;4
應該注意的是偏移量就是有效地址;
在二維數組;array[2][3];咱們能夠看出他有6個元素;偏移量是;5
通俗的理解就是;元素與第一個元素的距離;
三維數組array[i][j][n]: array[a][k][m]
偏移量是ajn+k*n=m;
好了廢話很少說,進入正題;
今天講一講數組的排序算法;
選擇法排序;算法

int main()
{
int i,j;
int array[10];
int ipos,itemp;// 定義數組,變量;
for(i=0;i<10;i++)
{
printf("array[i]=",i);
scanf("%d",&array[i]);//先進行輸入操做;
}
for(i=0;i<9;i++)//具體進行的操做;
{
ipos=i;
itemp=array[i];//先進行賦值,定義第一個數,最小;
for(j=i+1;j<10;j++)// 下列進行比較,第一個數和後九個數比較;
{
if(array[j]<itemp)
{
itemp=array[j];
ipos=j;
}
} // 找到一次循環中最小的數;
array[ipos]=array[i];//進行互換,將上面獲得的最下數,進行互換
array[i]=itemp;
}
for(i=0;i<10;i++)
{
printf("%d\t",i);
if(i==4)// 判斷,進行轉行;
printf("\n");
}
return 0;
}
這個能夠進行排位;數組

相關文章
相關標籤/搜索