我的程序是:定义两个数组,每个数组各输入任意5个数字现分别对各个数组进行大小排序,然后合并两个数组,最后用一个c[10]数组按从小至大打印出来!程序如下,
#include<iostream.h>
void main()
{
const int n=5;
int i,j,small,a[n],b[n];
cout<<"input a[5]"<<endl;
for(i=0;i<n;i++)
cin>>a[i];
cout<<"input b[5]"<<endl;
for(i=0;i<n;i++)
cin>>b[i];
for(i=0;i<n-1;i++)
{
small=i;
for(j=i+1;j<n;j++)
if(a[j]<a[small])
small=j;
int temp;
temp=a[i];
a[i]=a[small];
a[small]=temp;
}
for(i=0;i<5;i++)
cout<<a[i]<<" ";
cout<<endl;
for(i=0;i<n-1;i++)
{
small=i;
for(j=i+1;j<n;j++)
if(b[j]<b[small])
small=j;
int temp1;
temp1=a[i];
b[i]=b[small];
b[small]=temp1;
}
for(i=0;i<5;i++)
cout<<b[i]<<" ";
cout<<endl;
int c[10];
int indA=0,indB=0,indC=0;
while(indA<5&&indB<5)
if(a[indA]<=b[indB])
c[indC++]=a[indA++];
else
c[indC++]=b[indB++];
while(indA<5)
c[indC++]=a[indA++];
while(indB<5)
c[indC++]=b[indB++];
cout<<endl<<"---------c(small->large)---"<<endl;
for(i=0;i<10;i++)
cout<<c[i]<<" ";
cout<<endl;
}
请高手执教一下!为何不能排序出来
菜鸟问题!请高手指教
最新推荐文章于 2022-04-21 09:51:12 发布