冒泡排序函数c语言代码 冒泡排序c语言流程图

c语言冒泡排序法代码

冒泡法排序的原理是相邻的两个数进行比较,现在以“输入10个数,对它们按小到大的顺序排序”这道题,来展示冒泡法排序。

网页设计是网站建设的前奏,好的网页设计更深度的剖析产品和设计风格定位,结合最新的网页设计流行趋势,与WVI应用标准,设计出具企业表现力,大器而深稳的网站界面设。成都创新互联公司从2013年开始,是成都网站建设公司:提供企业网站设计,品牌网站建设,营销型企业网站建设方案,响应式网站建设,成都微信小程序,专业建站公司做网站。

#include

int main(){

int a[10];

int i,j,t;

printf (" input 10 numbers: \n");

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

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

printf ("\n");

for(j=0;j<9;j++)

for(i=0;i<9-j;i++)

if (a[i]>a[i+1])

{t=a[i];a[i]=a[i+1];a[i+1]=t;}

printf("the sorted numbers: \n");

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

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

printf("\n");

return 0;

}

冒泡排序的C语言代码

程序如下:

# include malloc.h

# include stdio.h

int main(void)

{

int i, j, t,num;

int * p;

printf("请输入要排序的数的个数:num=");

scanf("%d", num);

p= (int *)malloc(num* sizeof(int));

//输入要排序的数

for (i=0; inum; ++i)

{

printf("请输入第%d个要排序的数p[%d]=\n", i+1,i);

scanf("%d", p[i]);

}

//冒泡排序

for (i=0; inum-1; ++i)

{

for (j=0; jnum-1-i; ++j)

{

if (p[j]  p[j+1])  // 表示升序 表示降序

{

t = p[j];

p[j] = p[j+1];

p[j+1] = t; 

}

}

}

//输出已经排序好的数

printf("输出已经排序好的数");

for (i=0; inum; ++i)

{

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

}

printf("\n");

return 0;

}

程序运行结果:

随机输入十个数:

C语言冒泡排序法代码

冒泡排序每一趟排序把最大的放在最右边。

比如:

87 12 56 45 78

87和12交换:12 87 56 45 78

87和56交换:   56 87 45 78

87和45交换:      45 87 78

87和78交换:         78 87

到此第一趟排序结束,接下来的每一趟排序都是这样。

#includestdio.h

void Print(int *num, int n)

{

int i;

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

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

puts("\n");

return;

}

void Bubble_Sort(int *num, int n)

{

int i, j;

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

{

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

{

if(num[j]  num[j + 1])

{

int temp = num[j];

num[j] = num[j + 1];

num[j + 1] = temp;

}

Print(num, n);

}

}

return;

}

int main()

{

int num[8] = {87, 12, 56, 45, 78};

Bubble_Sort(num, 5);

return 0;

}

如何用c语言编写冒泡排序的程序?

对拥有 n 个元素的数组 R[n] 进行 n-1 轮比较。

第一轮,逐个比较 (R[1], R[2]),  (R[2], R[3]),  (R[3], R[4]),  …….  (R[N-1], R[N]),最大的元素被移动到 R[n] 上。

第二轮,逐个比较 (R[1], R[2]),  (R[2], R[3]),  (R[3], R[4]),  …….  (R[N-2], R[N-1]),次大的元素被移动到 R[n-1] 上。

。。。。。。

以此类推,直到整个数组从小到大排序。

具体的代码实现如下所示:

#include stdio.h

int main(){

int nums[10] = {4, 5, 2, 10, 7, 1, 8, 3, 6, 9};

int i, j, temp;

//冒泡排序算法:进行 n-1 轮比较

for(i=0; i10-1; i++){

//每一轮比较前 n-1-i 个,也就是说,已经排序好的最后 i 个不用比较

for(j=0; j10-1-i; j++){

if(nums[j] nums[j+1]){

temp = nums[j];

nums[j] = nums[j+1];

nums[j+1] = temp;

}

}

}

//输出排序后的数组

for(i=0; i10; i++)

{

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

}

printf("\n");

return 0;

}

当前标题:冒泡排序函数c语言代码 冒泡排序c语言流程图
当前地址:https://www.cdcxhl.com/article34/ddiogse.html

成都网站建设公司_创新互联,为您提供企业网站制作静态网站网站策划外贸网站建设品牌网站设计网页设计公司

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

网站托管运营