北飞的山羊 2022-10-23 17:02 采纳率: 50%
浏览 65
已结题

用键盘任意输入10个数,将最大的数调整到最前面,最小的数调整到最后面

输入:任意十个数
示例:0 1 2 3 4 5 6 7 8 9
结果:9 1 2 3 4 5 6 7 8 0
想了好久了,不知道怎样将所有数一起比较,希望可以用代码解答一下疑惑

  • 写回答

3条回答 默认 最新

  • CSDN专家-link 2022-10-23 18:12
    关注
    
    #include<stdio.h>
    int main()
    {
        int a[10],t,i,max=0,min=0;
        for(i=0;i<10;i++)
        {
            scanf("%d",&a[i]);
            if(a[i] > a[max]) 
                max=i;
            if(a[i] < a[min]) 
                min=i;
        }
        if(min == 0)    //当a[0]为最小值时,下一步max和0交换后,会将最小值交换到max位置,所以min需要修改为max
            min = max;
    
        t = a[max];
        a[max] = a[0];
        a[0] = t;
        
        t = a[min];
        a[min] = a[9];
        a[9] = t;
    
        for(i=0;i<10;i++)
            printf("%d ",a[i]);
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 11月1日
  • 已采纳回答 10月24日
  • 创建了问题 10月23日