先输入一个整数n(n小于等于100),接着输入n个整数,然后从小到大输出这n个数。咋写

img

img


这个怎么写啊,没搞懂原理,能不能帮我看一下,这是哪种排序类型,好像还没学,康康你们的代码

冒泡排序:


for (i = 0; i< n - 1; i++)  //比较n-1轮
    {
        for ( j = 0; j< n - 1 - i; j++)  //每轮比较n-1-j次,
        {
            if (a[j] > a[j+1]) //从小到大
            {
                temp = a[j];
                a[j] = a[j+1];
                a[j+1] = temp;
            }
        }
    }
#include <stdio.h>
 void bubble_sort(int a[], int n)

{
    int i, j, t;
    for (i = 0; i < n - 1; i++)
        for (j = 0; j < n - 1 - i; j++)
    if (a[j] > a[j + 1])
    {
        t = a[j];
        a[j] = a[j + 1];
        a[j + 1] = t;
    }
}

int main()

{
    int a[100], i, n;
    scanf("%d", & n);
    for (i = 0; i < n; i++)
        scanf("%d", & a[i]);
    bubble_sort(a, n);
    for (i = 0; i < n; i++)
        printf("%d ", a[i]);
    printf("\n");
}

做个排序就好啊

void sort(int a[],int n)
{
    int i,j,temp;
    for(i=0;i<n-1;i++)
        for(j=0;j<n-i-1;j++)
        {
            if(a[j] > a[j+1])
            {
                temp = a[j];
                a[j] = a[j+1];
                a[j+1] = temp;
            }
        }
}



#include <stdio.h>
#include <stdlib.h>
/*冒泡排序*/
void bubble_sort(unsigned int a[], int n)
{
    int i ,j, temp;
    for(i = 0; i < n - 1; i++)
    {
          for(j = 0; j <n - 1 - i; j++)
         {
            if(a[j] > a[j+1])
            {
                temp = a[j];
                a[j] = a[j+1];
                a[j+1] = temp;
            }
         }
    }
}
int main()
{
    int N = 0;
    int * score = NULL;
    scanf("%d", &N);
    score = (int *)malloc(sizeof(int)*N);
    for (int i = 0; i < N; i++)
    {
        scanf("%d", &score[i]);
    }
    bubble_sort(score, N);
    for (int i = 0; i < N; i++)
    {
        printf("%d ", score[i]);
    }
    printf("\n");
    return 0;
}

#include <stdio.h>

void bubble_sort(int a[], int n)

{ int i, j, t;

  for (i = 0; i < n - 1; i++)

    for (j = 0; j < n - 1 - i; j++)

      if(a[j] < a[j + 1])

      { t=a[j];

        a[j]=a[j+1];

        a[j+1]=t;

      }

}

int main()

{ int a[100],i,n;

  scanf("%d",&n);

  for(i=0;i<n;i++)

    scanf("%d",&a[i]);

  bubble_sort(a, n);

  for (i = 0; i < n; i++)

    printf("%d ", a[i]);

  printf("\n");

}
void sort(int a[],int n) {
    int i,j,temp;
    for (i = 0; i < n; i++) {
        for (j = i+1; j < n; j++) {
            if (a[i]>a[j]) {
                temp = a[i];
                a[i]=a[j];
                a[j]=temp;
            }
        }
    }
}

哪种排序类型都行,你会什么就用什么
冒泡没学过吗,没学过随便搜一下代码一大堆,犯得着在这坐等吗

这题不是让你排序的吗,你都没写哪来的排序类型