有沒有大佬解釋一下這個?我不太明白
int d()
{
int score[10]={67,98,75,63,82,79,81,91,66,84};
int x , y , z ;
for(x = 0 ; x < 9 ; x++)
{
for(y = 0 ; y < 9 - x ; y++ )
if(score[y] > score[y + 1])
{
z = score[y] ;
score[y] = score[y + 1] ;
score[y + 1] = z ;
}
}
printf("考試成績降序如下:\n") ;
for(y = 0 ; y <10 ; y++ )
{
printf("%d " , score[y] ) ;?
}
printf("\n\n") ;
return 0 ;
}
2021-04-28
這是冒泡排序法。
外層循環(huán)表示第幾輪排序,內(nèi)層排序表示當(dāng)前輪數(shù)第幾次排序。
第一輪從第一個元素到倒數(shù)第二個元素,相鄰的元素作比較,如果前面一個大,交換兩數(shù)的位置,以此類推。結(jié)束之后,最大的數(shù)已經(jīng)找出來并放到最后一位了。
第二輪從第一個元素到倒數(shù)第三個元素,相鄰的元素作比較,如果前面一個大,交換兩數(shù)的位置,以此類推。結(jié)束之后,最大的數(shù)已經(jīng)找出來并放到倒數(shù)第二位了。
。。。。。。