排序问题(选择排序以及冒泡排序)

排序问题中的两个排序算法(选择排序,冒泡排序),要求用函数实现排序算法,主函数中调用。待排序数据用随机数产生(这个过程建议也用一个函数实现。)

#include<stdio.h>

#include<math.h>

#include<stdlib.h>

#define MAX 50

void choose()

{

int n,i;

n=rand()%50+5;

printf("随机生成%d个数:\n",n);

int s[MAX];

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

s[i]=rand()%100+1;

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

}

printf("\n");

int j,t,min;

for(i=0;i<=n-2;i++){

min=i;

for(j=i+1;j<n;j++){

if(s[j]<s[min]){

min=j;

t=s[i];

     s[i]=s[min];

     s[min]=t;

}

}

}

printf("\n选择排序结果: \n");

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

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

printf("\n");

printf("\n");

printf("\n");

}

void maopao()

{

int n,i;

n=rand()%50+5;

printf("随机生成%d个数:\n",n);

int s[MAX];

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

s[i]=rand()%100+1;

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

}

printf("\n");

int j,t;

for(i=0;i<=n-2;i++)

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

if(s[j+1]<s[j]){

t=s[j];

    s[j]=s[j+1];

    s[j+1]=t;

}

}

printf("\n冒泡排序结果: \n");

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

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

printf("\n");

}

void main()

{

printf("--------------------选择排序--------------------\n");

choose();

printf("--------------------冒泡排序--------------------\n");

maopao();

}

结果截图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值