数组元素的删除
题目描述: 把一个数组的第x个位置的元素删除掉 输入 有三行 第一行有一个整数n( n <= 10 ) 第二行有n个整数 第三行有一个整数x,为要删除的位置 输出 输出更新后的数组
输入复制
5
1 2 3 4 5
3
输出复制
1 2 4 5
#include<iostream>
using namespace std;
int main()
{
int a[100];
int n;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>a[i];
}
int q;
cin>>q;
q--;
for(int i=0;i<n;i++)
{
if(i!=q)
{
cout<<a[i]<<" ";
}
}
return 0;
}
数组元素的插入
题目描述 :在一个数组的第x个位置插入一个新的数y 输入 有四行 第一行有一个整数n ( 5 <= n <= 10 ) 第二行有n个整数 第三行有一个整数x,为要插入的位 置 第四行有一个整数y,为要插入的整数 输出 更新后的数组
输入复制
5
7 2 3 4 5
2
9
输出复制
7 9 2 3 4 5
#include<iostream>
using namespace std;
int main()
{
int a[100];
int n;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>a[i];
}
int q,v;
cin>>q>>v;
q--;
for(int i=n-1;i>=q;i--)
{
a[i+1]=a[i];
}
a[q]=v;
n++;
for(int i=0;i<n;i++)
{
cout<<a[i]<<" ";
}
return 0;
}
元素插入有序数组
题目描述 :给你一个整数n和一个数列(数列个数不超过1000),这个数列保证从小到大排列,现要 求将这个整数n插入到数列中,使新的数列仍然从小到大排列。 输入 第一行一个整数n :等待插入的数 第二行一个整数m :数列中数的个数 第三行m个整数(空格隔开) 输出 一行整数:新的数列(空格隔开)
输入复制
2
4
1 3 4 5
输出复制
1 2 3 4 5
#include<iostream>
using namespace std;
int main()
{
int v,q;
q=0;
cin>>v;
int a[100];
int n;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>a[i];
}
for(int i=0;i<n;i++)
{
if(a[i]>v)
{
q=i;
break;
}
}
for(int i=n-1;i>q-1;i--)
{
a[i+1]=a[i];
}
a[q]=v;
n++;
for(int i=0;i<n;i++)
{
cout<<a[i]<<" ";
}
return 0;
}
删除数组的最小数
题目描述: 在一个不重复的数组中,请将这个数组的最小数删除后输出! 输入 有两行 第一行有一个整数n ( 5 <= n <= 100 ) 第二行有n个不重复的整数! 输出 删除最小数后的数组!
输入复制
5
1 7 6 8 2
输出复制
7 6 8 2
#include<iostream>
using namespace std;
int main()
{
int a[100];
int n;
cin>>n;
int min=9999;
int minindex=9999;
for(int i=0;i<n;i++)
{
cin>>a[i];
if(a[i]<min)
{
min=a[i];
minindex=i;
}
}
for(int i=0;i<n;i++)
{
if(i!=minindex)
{
cout<<a[i]<<" ";
}
}
return 0;
}
在最大数后面插入一个数
题目描述 :在一个不重复数组的最大数的后面插入一个新的数y 输入 有三行 第一行有一个整数n ( 5 <= n <= 100 ) 第二行有n个整数 第三行有一个整数y,为要插入的数 输出 更新后的数组
输入复制
5
7 2 3 4 5
9
输出复制
7 9 2 3 4 5
#include<iostream>
using namespace std;
int main()
{
int a[100];
int n;
cin>>n;
int max=-1;
int maxindex=-1;
for(int i=0;i<n;i++)
{
cin>>a[i];
if(a[i]>max)
{
max=a[i];
maxindex=i;
}
}
int y;
cin>>y;
for(int i=n-1;i>=maxindex+1;i--)
{
a[i+1]=a[i];
}
a[maxindex+1]=y;
n++;
for(int i=0;i<n;i++)
{
cout<<a[i]<<" ";
}
return 0;
}
小明排队做操迟到
题目描述 :做操的时间到了,小明在教室还在思考刚刚老师讲的一道题目,当他想通这个题时,同 学们都已经在操场上排好队了,他赶快跑到操场上找到自己的班级队伍,希望尽快找到 以前排队的位置,准备做操,小明记得应该排在第x学号同学的后面。你能不能来帮帮小 明呢? 输入(两行): 第一行3个整数:n x y(现在队伍的长度、第x同学 的学号、小明的学号) 第二行n个整数:n个同学的学号 。输出 n+1个学号(小明加入队伍后队伍中的每个数据)
输入复制
4 32 23
1 8 32 56
输出复制
1 8 32 23 56
#include<iostream>
using namespace std;
int main()
{
int a[100];
int n,x,y;
cin>>n>>x>>y;
for(int i=0;i<n;i++)
{
cin>>a[i];
}
int s=0;
for(int i=0;i<n;i++)
{
if(a[i]==x)
{
s=i+1;
}
}
for(int i=n-1;i>=s;i--)
{
a[i+1]=a[i];
}
a[s]=y;
n++;
for(int i=0;i<n;i++)
{
cout<<a[i]<<" ";
}
return 0;
}
删除第 X个数
题目描述 :删除数组中的第 X个数 输入 三行第1行输入整数 n,代表有 n个数 第 2行输入 n个数,空格隔开 第 3行输入 1个整数,代表第 X个数 输出 删除后的数组,空格隔开
输入复制
5
1 7 6 8 2
3
输出复制
1 7 8 2
#include<iostream>
using namespace std;
int main()
{
int a[100];
int n;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>a[i];
}
int q;
cin>>q;
q--;
for(int i=0;i<n;i++)
{
if(i!=q)
{
cout<<a[i];
}
}
return 0;
}
最小数前插入
题目描述: 在数组中的最小数前面插入X 输入 三行 第1行输入整数n,代表有n个数 第2行输入n个数,空格隔开 第3行输入1个整数,代表要插入的数 输出 插入后的数组,空格隔开
输入复制
6
3 7 6 8 2 9
10
输出复制
3 7 6 8 10 2 9
#include<iostream>
using namespace std;
int main()
{
int a[100];
int n;
cin>>n;
int min=9999;
int minindex=9999;
for(int i=0;i<n;i++)
{
cin>>a[i];
if(a[i]<min)
{
min=a[i];
minindex=i;
}
}
int y;
cin>>y;
for(int i=n-1;i>=minindex;i--)
{
a[i+1]=a[i];
}
a[minindex]=y;
n++;
for(int i=0;i<n;i++)
{
cout<<a[i]<<" ";
}
return 0;
}
指定数字前插入
题目描述: 在数组中,指定的数字前插入X 输入 三行 第1行输入整数n,代表有n个数 第2行输入n个数,空格隔开 第3行输入2个整数,代表要插入的数的位置 和值,空格隔开 输出 插入后的数组,空格隔开
输入复制
6
3 7 6 8 2 9
2
100
输出复制
3 100 7 6 8 2 9
#include<iostream>
using namespace std;
int main()
{
int a[100];
int n;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>a[i];
}
int q,v;
cin>>q>>v;
for(int i=n-1;i>=q;i++)
{
a[i+1]=a[i];
}
a[q]=v;
n++;
for(int i=0;i<n;i++)
{
cout<<a[i]<<" ";
}
return 0;
}