算法问题
n个数,已从小到大顺序排列,从主函数中键入一个值,调用一个函数,它把键入的数插到原有数列中,保存原有顺序,并将挤出最大的数(有只能是被插入数),返回给主函数输出
我自己编大家帮忙看那里错了
#include <iostream.h>
int maxNum(int[],int,int);
int temp,r;
void main()
{
int a[4]={2,4,6,8};
int b,c,len;
len=sizeof(a)/sizeof(int);
cout<<"please input a number";
cin>>b;
c=maxNum(a,len,b);
cout<<c<<endl;
for(int k=0;k<len;k++)
{
cout<<a[k]<<",";
}
cout<<endl;
}
int maxNum(int a[4],int size,int Num)
{
if(Num>a[size-1])
{
return Num;
}
else
{
for(int i=0;i<size;i++)
{
if(a[i]>Num)
{
temp=a[i];
a[i]=Num;
for(int j=i;j<size;j++)
{
r=a[j+1];
a[j+1]=temp;
temp=r;
}
}
return a[size-1];
}
}
}