|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- #include <iostream>
- using namespace std;
- int main()
- {
- int n,add,j=0;
- cin>>n;
- int a[51];
- for(int i=0;i<n;i++)
- {
- cin>>a[i];
- }
- cin>>add;
- for(int i=0;i<n-1;i++)
- {
- if(a[i]<add&&a[i+1]>add)
- {
-
- }
-
- }
- for(int i=0;i<n;i++)
- {
- cout<<a[i]<<' ';
- }
- return 0;
- }
复制代码
if里面的判断内容不会写了
在给定的代码中,您需要在有序数组中插入一个数。判断应该在哪个位置插入这个数。
您可以使用以下方法来插入一个数:
1. 遍历数组,找到第一个大于要插入数的元素的位置。
2. 将要插入的数插入到该位置,并将该位置之后的元素都向后移动一个位置。
以下是修改后的代码:
- #include <iostream>
- using namespace std;
- int main()
- {
- int n, add, j = 0;
- cin >> n;
- int a[51];
- for (int i = 0; i < n; i++)
- {
- cin >> a[ i];
- }
- cin >> add;
- // 找到插入位置
- int insertIndex = 0;
- for (int i = 0; i < n; i++)
- {
- if (a[ i] < add && a[i + 1] > add)
- {
- insertIndex = i + 1;
- break;
- }
- }
- // 将元素后移
- for (int i = n - 1; i >= insertIndex; i--)
- {
- a[i + 1] = a[ i];
- }
- // 插入数
- a[insertIndex] = add;
- // 输出数组
- for (int i = 0; i < n + 1; i++)
- {
- cout << a[ i] << ' ';
- }
- return 0;
- }
复制代码
在这个修改后的代码中,我们首先找到了要插入的位置 insertIndex ,然后将插入位置之后的元素都向后移动一个位置,最后将要插入的数插入到 insertIndex 位置。最后输出修改后的数组。
|
|