#include
void maopao(int a[],int n);//冒泡法排序
void xuanze(int a[]);//选择法排序
void kuaisu(int a[],int i,int j);//快速法排序
void charu(int a[],int n);//插入法排序
void erfen(int a[],int len,int n);//二分法插入一个数据
int main()
{
int i;int in;int num[20]={0};
int flag=0;
printf("输入10个数作为参考数组\t");
for(i=0;i<10;i++)
{
scanf("%d",&num[i]);
}
printf("选择比较方法\n");
scanf("%d",&flag);
switch(flag)
{
case 1:maopao(num,10);break;
case 2:xuanze(num);break;
case 3:kuaisu(num,0,9);break;
case 4:charu(num,10);break;
}
printf("排序后的数组如下\n");
for(i=0;i<10;i++)
{
printf("%d ",num[i]);
}
printf("\n");
int num_insert;
printf("请输入要插入的数据。\n");
scanf("%d",&num_insert);
erfen(num,10,num_insert);
}
void maopao(int a[],int n)
{
int i,j,temp;int enable;
for(i=0;i
{
enable=0;
for(j=0;j
{
if(a[j+1]
{
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
enable=1;
}
}
if(enable==0)break;
}
}
void xuanze(int a[])
{
int i,j,k,temp;
for(i=0;i<9;i++)
{
k=i;//给记号赋值
for(j=i+1;j<=9;j++)
{
if(a[j]