冒泡排序c语言
❶ c语言的冒泡排序
#include<stdio.h>
void main()
{
int i,j,t;
int a[7]={1,5,7,2,5,4,10};
for(j=0;j<6;j++)
{
for(i=0;i<6-j;i++)
{
if(a[i]>a[i+1])
{t=a[i];
a[i]=a[i+1];
a[i+1]=t;}
}
}
for(i=0;i<7;i++)
printf("%d ",a[i]);
}
❷ c语言冒泡排序法详解
任意两个数作比较,大的放后面,小的放前面,然后大的在和下一个数比较,还是大的放后小的往前,以此类推,直到所有数比完了,然后输出
❸ c语言数组排序冒泡排序
void bubblesorting(int *nums, int size)
{
int i, j;
int temp;
for(i = 0; i < size-1; i++)
for(j = 0; j < size-1-i; j++)
{
if(nums[j] > nums[j+1])//从小到大
{
temp = nums[j];
nums[j] = nums[j+1];
nums[j+1] = temp;
}
}
}
❹ C语言 冒泡排序法的代码
#include<stdio.h>
void main()
{
int a[10];
int i,j,t;
printf("input 10 numbers: ");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(j=0;j<9;j++) /*进行9次循环 实现9趟比较*/
for(i=0;i<9-j;i++) /*在每一趟中进行9-j次比较*/
if(a[i]>a[i+1]) /*相邻两个数比较,想降序只要改成a[i]<a[i+1]*/
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
printf("the sorted numbers: ");
for(i=0;i<10;i++)
printf(" %d",a[i]);
}
(4)冒泡排序c语言扩展阅读:
冒泡排序算法的运作
1、比较相邻的元素。如果第一个比第二个大(小),就交换他们两个。
2、对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大(小)的数。
3、针对所有的元素重复以上的步骤,除了最后已经选出的元素(有序)。
4、持续每次对越来越少的元素(无序元素)重复上面的步骤,直到没有任何一对数字需要比较,则序列最终有序。
简单的表示
#include <stdio.h>
void swap(int *i, int *j)
{
int temp = *i;
*i = *j;
*j = temp;
}
int main()
{
int a[10] = {2,1,4,5,6,9,7,8,7,7};
int i,j;
for (i = 0; i < 10; i++)
{
for (j = 9; j > i; j--)//从后往前冒泡
{
if (a[j] < a[j-1])
{
swap(&a[j], &a[j-1]);
}
}
}
for (i = 0; i < 10; i++)
{
printf("%d ", a[i]);
}
return 0;
}
参考资料来源:冒泡排序-网络
❺ 冒泡排序c语言
for循环里面有错,
for(int i=0;i<35-1;i++){
for(int j=0;j<35-i-1;j++){
if(a[j]>a[j+1]){
temp=a[j];a[j]=a[j+1];a[j+1]=temp;
}
❻ C语言冒泡排序
在后面加上getchar()好了。
❼ c语言冒泡排序
不知道楼主想干什么。这样的程序,真是亮瞎我的狗眼了。。。。
❽ C语言冒泡排序
#include<stdio.h>
#define N 20
main()
{
int a[N],i,j,temp,n;
printf("input 20 numbers:\n");
for(i=0;i<N;i++)
scanf("%d",&a[i]);
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;}
for(i=0;i<N;i++)
printf("%d ",a[i]);
printf("\n");
printf("input n:");
scanf("%d",&n);
for(i=0;i<N;i++)
if(a[i]==n)
{printf("YES %d\n",i);
break;}
if(i==20)printf("NO found\n");
}
❾ C语言冒泡排序。
#include<stdio.h>
void main()
{
int a[10];
int i,j,t;
printf("input 10 numbers: ");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(j=0;j<9;j++) /*进行9次循环 实现9趟比较*/
for(i=0;i<9-j;i++) /*在每一趟中进行9-j次比较*/
if(a[i]>a[i+1]) /*相邻两个数比较,想降序只要改成a[i]<a[i+1]*/
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
printf("the sorted numbers: ");
for(i=0;i<10;i++)
printf(" %d",a[i]);
}
(9)冒泡排序c语言扩展阅读:
冒泡排序算法的运作
1、比较相邻的元素。如果第一个比第二个大(小),就交换他们两个。
2、对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大(小)的数。
3、针对所有的元素重复以上的步骤,除了最后已经选出的元素(有序)。
4、持续每次对越来越少的元素(无序元素)重复上面的步骤,直到没有任何一对数字需要比较,则序列最终有序。
简单的表示
#include <stdio.h>
void swap(int *i, int *j)
{
int temp = *i;
*i = *j;
*j = temp;
}
int main()
{
int a[10] = {2,1,4,5,6,9,7,8,7,7};
int i,j;
for (i = 0; i < 10; i++)
{
for (j = 9; j > i; j--)//从后往前冒泡
{
if (a[j] < a[j-1])
{
swap(&a[j], &a[j-1]);
}
}
}
for (i = 0; i < 10; i++)
{
printf("%d ", a[i]);
}
return 0;
}