用数组实现输入n个有序的整数,然后再输入一个整数x,把x插入到该数组当中,使得该数组仍然有序。

如题所述

已调试,有问题追问
void main()
{ int a[100];
int b[101];
int i,n,x;
cout<<"请输入所有数据的个数"<<endl;
cin>>n;
cout<<"请输入这些升序数字"<<endl;
for( i=0;i<n;i++)
{cin>>a[i];}
cout<<"请输入插入的数"<<endl;
cin>>x;
int y;
for( i=0;i<n;i++ )
{ if(x<=a[i])
break;
b[i]=a[i];
}
//i--;
b[i]=x;
for(i=i;i<n+1;i++)
{ b[i+1]=a[i]; }

for(i=0;i<n+1;i++)
{cout<<b[i]<<" ";}
}追问

有些东西我现在还没学到.所以看不懂.

追答

好吧,给你改成c的,上面是c++

给你改好了,这下应该能看懂了
已调试,还不明白继续追问
昨天不小心把这程序给贴到另一个问题上了,真对不起那位兄弟
void main()
{ int a[100];
int b[101];
int i,n,x;
printf("请输入所有数据的个数\n");
scanf("%d",&n);
printf("请输入这些升序数字\n");
for( i=0;i<n;i++)
{scanf("%d",&a[i]);}
printf("请输入插入的数\n");
scanf("%d",&x);
int y;
for( i=0;i<n;i++ )
{ if(x<=a[i])
break;
b[i]=a[i];
}

b[i]=x;
for(i=i;i<n+1;i++)
{ b[i+1]=a[i]; }

for(i=0;i<n+1;i++)
{printf("%d ",b[i]);}
}

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答