当前位置:首页 » 编程语言 » 冒泡排序c语言输入

冒泡排序c语言输入

发布时间: 2023-06-04 14:21:17

c语言冒泡排序法

(1)基本思想:在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。

(2)实例:

(3)代码解释:

#include<stdio.h>
int main()
{
int a[10];
int i,j,t,temp;//temp记录临时中间值
printf("请输入10个数:");
for (i=0;i<10;i++)
{
scanf("%d",&a[i]);//记录输入的十个数
}
for (j=1;j<=9;j++)
{
t=10-j;
for (i=0;i<t;i++)
{
if (a[i]>a[i+1]) {

//交换两数的位置

temp=a[i];
a[i]=a[i+1];
a[i+1]=temp;
}
}

}
for (i=0;i<=9;i++)
{
printf("%d ",a[i]);
}
return 0;
}


望采纳!

⑵ c语言怎么做冒泡排序啊

使用冒泡排序法进行编程

解释:

1.第一个for循环:利用数组循环输入4个变量。

2.第二个for循环:该循环的意思是如果a[0]>a[1]的话,两个变量的值交换,利用循环依次比较。要注意的是i<3,因为其中有i+1,i最大取到2,也就是i+1最大取到3才正确。

3.第三个for循环:利用循环依次输出排序后的数组,每输出一个加一个空格以便于区分。

(2)冒泡排序c语言输入扩展阅读:

冒泡排序法,从数组头部开始,不断比较相邻的两个元素的大小,通过交换两个元素的值使较大的元素逐渐往后移动,直到数组的末尾。

经过第一轮的比较,就可以找到最大的元素,并将它移动到最后一个位置。第一轮结束后,继续第二轮。仍然从数组头部开始比较,让较大的元素逐渐往后移动,直到数组的倒数第二个元素为止。

经过第二轮的比较,就可以找到次大的元素,并将它放到倒数第二个位置。

以此类推,进行 n-1(n 为数组长度)轮“冒泡”后,就可以将所有的元素都排列好。

⑶ C语言冒泡排序(数组)

按照你的要求编写的C语言冒泡排序的程序如下

#include<stdio.h>

intmain(){

inti,j,k,T,n,tmp;

scanf("%d",&T);

for(i=0;i<T;i++){

scanf("%d",&n);

inta[n];

for(j=0;j<n;j++){

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

}

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

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

if(a[k]>a[k+1]){

tmp=a[k];

a[k]=a[k+1];

a[k+1]=tmp;

}

}

for(k=0;k<n;k++){

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

}

printf(" ");

}

}

return0;

}


运行结果
输入2
输入51044312
输出
4101243
4121043
1241043
1241043
输入10201231224345424523-10
输出
201221235424523-10434
122205424523-10123434
2122024523-1054123434
21222023-104554123434
221220-10234554123434
2212-1020234554123434
22-101220234554123434
2-1021220234554123434
-10221220234554123434
热点内容
出轨数据库 发布:2025-05-09 22:48:47 浏览:148
java过滤器的作用 发布:2025-05-09 22:44:06 浏览:857
定投策略算法 发布:2025-05-09 22:21:36 浏览:601
梯形纠正算法 发布:2025-05-09 22:16:46 浏览:717
解压心跳声 发布:2025-05-09 22:16:10 浏览:718
如何取消安卓手机程序隐私密码 发布:2025-05-09 21:48:03 浏览:48
c语言字符串数组连接 发布:2025-05-09 21:46:37 浏览:133
源码的移码 发布:2025-05-09 21:25:01 浏览:754
ie内核缓存 发布:2025-05-09 21:19:35 浏览:545
第五人格服务器错误是怎么解决 发布:2025-05-09 21:14:24 浏览:513