视觉 C++ 问题
你好,
我有 3 个元素的数组,我想将其元素向右移动并用“SHIFTED”字符串替换移动的索引单元格,这应该循环直到所有单元格都有“SHIFTED”字符串。
例如:
int a[x]={0,1,2};
初始索引和元素顺序:
[0]=0
[1]=1
[2]=2
应该成为:
第一个循环:
[0]=SHIFTED
[1]=0
[2]=1
第二循环:
[0]=SHIFTED
[1]=SHIFTED
[2]=0
第三循环:
[0]=SHIFTED
[1]=SHIFTED
[2]=SHIFTED
我知道我可以用 memmove() 做到这一点,但我不想在其中使用任何函数。
你能帮帮我吗?这是我的工作:
#include <iostream>
#include <string>
#include <stdio.h>
#include <cstdlib>
using namespace std;
int const ARRAY_SIZE=3;
int main()
{
int Array[ARRAY_SIZE];
int iniPostion,newPostion;
string x="SHIFTED";
for(iniPostion=0; iniPostion<ARRAY_SIZE; iniPostion++)
{
Array[iniPostion] = iniPostion;
cout << "Cell [" << iniPostion << "] Initial Element is: (" << Array[iniPostion] << ")" << endl;
}
cout << endl;
for(newPostion=0; newPostion<ARRAY_SIZE; newPostion++)
{
Array[newPostion]=newPostion;
cout << "Cell [" << newPostion << "] New Element is: (";
if(Array[newPostion-1]<0)
{
cout << x << ")\n";
}
else
{
cout << Array[newPostion-1] << ")" << endl;
}
}
return 0;
}