VISUAL C++ ВопросКак сдвиг элементов массива вправо и заменить сдвинутый индекс шпагатом в Visual 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;
}
Большого спасибо codaddict, что сделал трюк :) – 2010-03-08 00:04:43