中易网

C++题:编制数组排序,用冒泡排序、选择排序、插入排序三种方法。急需答案!!

答案:1  悬赏:20  
解决时间 2021-11-06 13:14
编制一维数组排序程序。数组大小n用全局常变量定义,数组数据从文本文件中读入或随机生成。包含冒泡排序、选择排序、插入排序三种排序方法。程序能够选择使用任何一种方法排序。谢谢!
急需答案,恳请会的帮忙!不胜感激!!
最佳答案
分太少了,还是给你写一个吧

#include <stdio.h>
#include <time.h>
#include <stdlib.h>

#define N 10

void BubbleSort(int a[])
{
int i,j,t;
for (i=0;i<N;i++)
{
for (j=i+1;j<N;j++)
{
if(a[i]>a[j])
{
t=a[i];a[i]=a[j];a[j]=t;
}
}
}
}

void SelectSort(int a[])
{
int i,j,t,min_pos;
for (i=0;i<N;i++)
{
min_pos=i;
for (j=i+1;j<N;j++)
{
if (a[min_pos]>a[j])
min_pos=j;
}
if (i!=min_pos)
{
t=a[i];a[i]=a[min_pos];a[min_pos]=t;
}
}
}

void InsertSort(int a[])
{
int i,j;
int temp;
for(i=1;i<N;i++)
{
temp = a[i];
for(j=i;j>0 && temp<a[j-1] ;j--)
{
a[j]=a[j-1];
}
a[j]=temp;
}
}

void main()
{
int i,imethod,a[N];
while(1)
{
srand(time(0));
printf("Random Datas Are:\n");
for (i=0;i<N;i++)
{
a[i] = rand();
printf("%d ",a[i]);
}
printf("\nPlease Select Sort Method:\n1:Bubble Sort\n2:Select Sort\n3.Insert Sort\n0:Exit:");
scanf("%d",&imethod);
switch(imethod)
{
case 1:
BubbleSort(a);
break;
case 2:
SelectSort(a);
break;
case 3:
InsertSort(a);
break;
case 0:
printf("Thanks for using,bye!\n");
return;
default:
printf("Input Error!Please Input (0-3)\n");
break;
}
printf("After Sort:\n");
for (i=0;i<N;i++)
{
printf("%d ",a[i]);
}
printf("\n\n");
}
}
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
家里鱼缸约24升(32×22×35)养了10条约5㎝
请问买车是不是在4S店比综合店要好啊
帮忙:取个容易说也容易记的英语名字,女孩子
安岳民族新城房产证什么时候能拿到
一个人看书总喜欢从后往前看代表什么
苦瓜和茄子能一起吃吗?
三堰长途客运站在不在十堰市内
申通到陕西榆林不?
中国人寿保险公司锦州分公司的联系电话是多少
电影执法者台词
请问胎盘低至可以顺产吗
怎样才能最快测出怀孕?
垄断部门的市场壁垒是什么?
终极一班里的班导田欣是谁演的阿?
对对子细雨对什么?
推荐资讯
历史中真的有包拯、公孙策和展昭这几个人吗?
摄影问题:为什么负片颜色相反(白的显黑,黑
网络电话怎么有时候就打不通了呢?
临产前吃什么胎盘容易出来?
什么是“号外”?
天然气锅炉尾气二氧化硫一般是多少
昆明金毛寄养多少钱一天
美素佳儿如何看产地
阿拉伯人的饮食习惯
求已知的宠物小精灵名字(按编号)
新建墙体有哪些厚度,分别用哪些材料做的
难忘什么填词语
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?