编程介的小学生 2019-03-17 22:33 采纳率: 20.5%
浏览 995

找出输入数组最小的数,将它与最前面的数交换后输出用C语言的办法实现

Problem Description
输入n(n<100)个数,找出其中最小的数,将它与最前面的数交换后输出这些数。

Input
输入数据有多组,每组占一行,每行的开始是一个整数n,表示这个测试实例的数值的个数,跟着就是n个整数。n=0表示输入的结束,不做处理。

Output
对于每组输入数据,输出交换后的数列,每组输出占一行。

Sample Input
4 2 1 3 4
5 5 4 3 2 1
0

Sample Output
1 2 3 4
1 4 3 2 5

  • 写回答

2条回答 默认 最新

  • qq_41968547 2019-03-18 20:14
    关注

    #include

    int main()
    {
    int n;
    while(scanf("%d",&n )&&n!=0)
    {
    int a[100];
    scanf("%d",&a[0]);
    int temp=a[0];
    int index=0;//最小值的下标
    for(int i=1;i {
    scanf("%d",&a[i]);
    if(temp>a[i])
    {
    temp=a[i];
    index=i;

    }

      }
    
      temp=a[0];
      a[0]=a[index];
      a[index]=temp;
    
      for(int i=0;i<n;i++)
        printf("%d ",a[i]);
      printf("\n");
    
    } 
    return 0;
    

    }

    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog