c++中怎样在已经初始化的数组中插入一个数,并且其他数相对顺序不变??求源码,一定要用c++啊。。谢谢啦!
展开全部
#include <iostream>
using namespace std;
void insert(int a[], int size, int index, int number)
{
int i;
for (i = size - 1; i >= index; --i)
{
a[i] = a[i - 1];
}
a[i] = number;
return;
}
int main()
{
int a[10] = {0};
// 初始化数组
for (int i = 0; i < 5; ++i)
{
a[i] = i;
}
// 打印数组
for (int i = 0; i < sizeof(a)/sizeof(int); ++i)
{
cout << "a["
<< i
<< "] = "
<< a[i]
<< endl;
}
cout << endl;
insert(a, sizeof(a)/sizeof(int), 2, 8); // 在数组的第2个位置插入一个8
// 打印数组
for (int i = 0; i < sizeof(a)/sizeof(int); ++i)
{
cout << "a["
<< i
<< "] = "
<< a[i]
<< endl;
}
}
这样是你要的结果不?
using namespace std;
void insert(int a[], int size, int index, int number)
{
int i;
for (i = size - 1; i >= index; --i)
{
a[i] = a[i - 1];
}
a[i] = number;
return;
}
int main()
{
int a[10] = {0};
// 初始化数组
for (int i = 0; i < 5; ++i)
{
a[i] = i;
}
// 打印数组
for (int i = 0; i < sizeof(a)/sizeof(int); ++i)
{
cout << "a["
<< i
<< "] = "
<< a[i]
<< endl;
}
cout << endl;
insert(a, sizeof(a)/sizeof(int), 2, 8); // 在数组的第2个位置插入一个8
// 打印数组
for (int i = 0; i < sizeof(a)/sizeof(int); ++i)
{
cout << "a["
<< i
<< "] = "
<< a[i]
<< endl;
}
}
这样是你要的结果不?
展开全部
比方
int a[5]={1,2,3,4,5};
a[4]=10;
此时a[4]被重新赋值为10
你要这样吗?
int a[5]={1,2,3,4,5};
a[4]=10;
此时a[4]被重新赋值为10
你要这样吗?
追问
不是,是插入一个数。。。。不是改变原有的值
追答
你的意思是让a[5]变成a[6]吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询