/*
选择排序
思路: 对于一个数组,先定义一个数组的元素为最大值,取这个最大值的角标, 然后取第二个元素与之对比, 判断大小,如果第二个元素比第一个大,那么就将第二个元素的角标赋值给第一个元素, 依次循环到这个数组结束,把两个元素交换位置 此为第一轮 然后再依次判断剩下的数,实现交换即可
*/
- #include <stdio.h>
- int main(){
- int ss[6]={0,2,4,6,5,8};
-
- int jiaobiao=0;
- for (int i=0; i<6;i++) {
- int jiaobiao=i;
- for (int j=i+1; j<6; j++)
- {
- if (ss[jiaobiao]<ss[j]) //如果下一个元素的值大于之前我们定义的最值,
- {
- jiaobiao=j; //就将这个值的角标给之前的最值,
- }
- }
- printf("第%d轮的排序的最大值角标为%d\n",i,jiaobiao); //并打印输出这个最值得角标
复制代码
|