C语言程序设计之用冒泡排序法对整型数组进行升序排序

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_37787043/article/details/79790150
#include <stdio.h>
#define NUM 8
void maopao();

int main(void)
{
    maopao();
    return 0;
}

void maopao(void)
{
    int a[NUM],i,j,tmp,k,flag;

    printf("input %d number: \n",NUM);

    for(i=0;i<NUM;i++)  //输入NUM个整数
        scanf("%d",&a[i]);

    for(i=1;i<NUM;i++) //循环SIZE-1次
    {
        flag = 0;
        for(j=0;j<NUM-i;j++) //实现一轮冒泡操作
        {
            if(a[j]>a[j+1])
            {
                tmp = a[j];
                a[j] = a[j+1];
                a[j+1] = tmp;
                flag = 1;
            }
        }
        if(flag == 0) //一大轮都没有交换,表示后面的数据已经排序好
            break;
        printf("the sorted number:\n");
        for(k=0;k<NUM;k++)
            printf("%d  ",a[k]);
        printf("\n");   
    }
    printf("the sorted number:\n");
    for(k=0;k<NUM;k++)
         printf("%d  ",a[k]);
    printf("\n");
}



猜你喜欢

转载自blog.csdn.net/weixin_37787043/article/details/79790150
今日推荐