C语言用冒泡法和选择法对10个数进行排序
来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/07/04 23:37:31
C语言用冒泡法和选择法对10个数进行排序
![C语言用冒泡法和选择法对10个数进行排序](/uploads/image/z/959224-40-4.jpg?t=C%E8%AF%AD%E8%A8%80%E7%94%A8%E5%86%92%E6%B3%A1%E6%B3%95%E5%92%8C%E9%80%89%E6%8B%A9%E6%B3%95%E5%AF%B910%E4%B8%AA%E6%95%B0%E8%BF%9B%E8%A1%8C%E6%8E%92%E5%BA%8F)
冒泡法:
#define N 10
#include<stdio.h>
maopao(int a[N])
{
int i,j,t;
for(j=0;j<N;j++)
for(i=0;i<N-j;i++)
if(a[i]>a[i+1])
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
printf("排序后的数组为:\n");
for(i=0;i<N;i++)
printf("%d ",a[i]);
printf("\n");
}
void main()
{
int i,a[N];
printf("请输入10个数:\n");
for(i=0;i<N;i++)
scanf("%d",&a[i]);
printf("\n");
maopao(a[N]);
}
选择法:
#include<stdio.h>
#define N 10
void main()
{
int i,j,k,t,a[N];
for(i=0;i<N;i++)
scanf("%d",&a[i]);
for(i=0;i<N;i++)
{
k=i;
for(j=i+1;j<N;j++)
if(a[j]>a[k])
k=j;
if(k!=i)
{
t=a[i];
a[i]=a[k];
a[k]=t;
}
}
for(i=0;i<10;i++)
{
printf("%d ",a[i]);
}
printf("\n");
}
#define N 10
#include<stdio.h>
maopao(int a[N])
{
int i,j,t;
for(j=0;j<N;j++)
for(i=0;i<N-j;i++)
if(a[i]>a[i+1])
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
printf("排序后的数组为:\n");
for(i=0;i<N;i++)
printf("%d ",a[i]);
printf("\n");
}
void main()
{
int i,a[N];
printf("请输入10个数:\n");
for(i=0;i<N;i++)
scanf("%d",&a[i]);
printf("\n");
maopao(a[N]);
}
选择法:
#include<stdio.h>
#define N 10
void main()
{
int i,j,k,t,a[N];
for(i=0;i<N;i++)
scanf("%d",&a[i]);
for(i=0;i<N;i++)
{
k=i;
for(j=i+1;j<N;j++)
if(a[j]>a[k])
k=j;
if(k!=i)
{
t=a[i];
a[i]=a[k];
a[k]=t;
}
}
for(i=0;i<10;i++)
{
printf("%d ",a[i]);
}
printf("\n");
}
C语言用冒泡法和选择法对10个数进行排序
c语言的一题目:分别用冒泡法和选择法对10个数排序!
对n个数排序:使用选择法和冒泡法
C语言中选择法排序和冒泡法排序有什么区别
C语言中冒泡排序法和选择排序法有哪些不同
c语言中,我怎么感觉冒泡法和选择法排序一模一样啊?
C语言 冒泡排序法和选择法的不同,本质区别
vb中怎样分别用选择法和冒泡法分别对100个随机数进行递增排序?
C语言用冒泡排序法对数组中的8个整数(a[8]={6,8,5,4,6,9,3,2})进行从小到大排序
C语言:下面程序使用选择排序方法对20个整数进行排序,这20个数从键盘输入,并输出排序前和排序后的数据
VB随机产生10个两位数整数(正整数),要求分别用选择排序法和冒泡排序法将这10个数降序排列输出在窗体上
对N个元素进行排序,用冒泡法进行排序时,共需排几次?