用数组作函数参数,定义一个实现冒泡排序的函数,在主函数中完成数据的输入和输出.

 我来答
changyiduU4Q
高粉答主

2019-07-08 · 关注我不会让你失望
知道答主
回答量:264
采纳率:100%
帮助的人:8.6万
展开全部

c语言的代码如下:

#include<stdio.h>

void Bubble_Sort(int num[50],int n){//传入数组和数组的大小,冒泡排序函数
int i,j,temp;
for(i=0;i<n;i++){
for(j=0;j<n-1-i;j++){
if(num[j]>num[j+1]){
temp=num[j];
num[j]=num[j+1];
num[j+1]=temp;
}

}
}

}

int main(){   //主函数
int num[50];
int n,i;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&num[i]);  //输入数据
}
Bubble_Sort(num,n);  //调用函数
for(i=0;i<n;i++){
printf("%d ",num[i]);   //输出
}
return 0;

}

扩展资料

其他排序算法

1、插入排序

插入排序:已知一组升序排列数据a[1]、a[2]、……a[n],一组无序数据b[1]、b[2]、……b[m],需将二者合并成一个升序数列。首先比较b[1]与a[1]的值,若b[1]大于a[1],则跳过,比较b[1]与a[2]的值;

若b[1]仍然大于a[2],则继续跳过,直到b[1]小于a数组中某一数据a[x],则将a[x]~a[n]分别向后移动一位,将b[1]插入到原来a[x]的位置这就完成了b[1]的插入。b[2]~b[m]用相同方法插入。(若无数组a,可将b[1]当作n=1的数组a)

2、希尔排序

由希尔在1959年提出,又称希尔排序(shell排序)。已知一组无序数据a[1]、a[2]、……a[n],需将其按升序排列。发现当n不大时,插入排序的效果很好。

首先取一增量d(d<n),将a[1]、a[1+d]、a[1+2d]……列为第一组,a[2]、a[2+d]、a[2+2d]……列为第二组……,a[d]、a[2d]、a[3d]……列为最后一组以次类推,在各组内用插入排序,然后取d'<d,重复上述操作,直到d=1。

参考资料来源:百度百科-排序

微俊king
推荐于2016-05-24 · TA获得超过576个赞
知道小有建树答主
回答量:626
采纳率:50%
帮助的人:566万
展开全部
#include<stdio.h>
#include<malloc.h>
void Bubble(int *a, int m){
int i, j, temp;
for(i = 0; i < m-1; ++i)
for(j = 0; j < m-i-1; ++j){
if(a[j] < a[j+1]){
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}

}

int main(){
int *a, m, i;
printf("input your num:");
scanf("%d", &m);
a = (int *)malloc(sizeof (int));
for(i = 0; i < m; ++i){
printf("input %d num: ", i+1);
scanf("%d", &a[i]);
}
Bubble(a, m);
for(i = 0; i < m; ++i)
printf("%3d", a[i]);
return 0;
}
追问
用C++语言来编写
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
白柳天下第一帅
推荐于2018-03-11 · TA获得超过160个赞
知道小有建树答主
回答量:240
采纳率:0%
帮助的人:124万
展开全部
#include<string.h>
int i;
int a[10];
main()
{
clrscr();
for(i=0;i<10;i++)
scanf("%d",&a[i]);
sort(a);
for(i=0;i<10;i++)
printf("%d ",a[i]);
system("pause");

}

int sort(int array[10])
{ int i,j,temp;

for(i=0;i<10;i++)
{
for(j=0;j<10;j++)
if(array[i]>array[j])
{
temp=array[j];
array[j]=array[i];
array[i]=temp;

}
}}
测试了一个多小时,好久没编程了,终于成功了。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式