C语言 冒泡排序算法解决方案

yeotifhr  于 2023-03-17  发布在  其他
关注(0)|答案(1)|浏览(131)

我正在尝试使用buble排序算法对数组进行排序

type here
#include <stdio.h>
#include <string.h>
//bubble sort algorithm.
int main()
{
    int temp[]={5,3,4,7,8,1};
    int n=6;
    for (int i=0; i<n-1; i++)
    {
        for (int j=0;j<n-i-1;j++)
        {
            if (temp[j] > temp[j+1])
            {
                int swap = temp[j];
                temp[j] = temp[j+1];
                temp[j+1] = swap;
            }

        }
        printf("%i",temp[i]);
    }

}

我就知道会这样,
134578,但生成了34157,我做错了什么?

irtuqstp

irtuqstp1#

下面是正确的代码。您正在打印数组。排序后,我们需要打印它以获得正确的结果

#include <stdio.h>
//bubble sort algorithm.
int main()
{
    int temp[]={5,3,4,7,8,1};
    int n=6;
    for (int i=0; i<n-1; i++)
    {
        for (int j=0;j<n-i-1;j++)
        {
            if (temp[j] > temp[j+1])
            {
                int swap = temp[j];
                temp[j] = temp[j+1];
                temp[j+1] = swap;
            }

        }
       
    }
    for(int i=0; i<n;i++)
    {
        printf("%i",temp[i]);
    }
}

相关问题