Реверсивный массив C ++

В C ++ мне нужно:

  • Читайте в строке из пользовательского ввода и поместите его в массив символов [done]
  • Затем передайте этот массив функции [done]
  • Функция должна изменить порядок символов [проблема!]
  • Затем, назад в main() , он отображает этот оригинальный массив с вновь обращенными символами.

У меня возникли проблемы с созданием функции, которая фактически делает реверсирование, потому что у меня есть некоторые ограничения:

  • Я не могу иметь никаких локальных переменных массива.
  • Нет указателей

Моя функция проходит только в исходном массиве, то есть:

 void reverse(char word[]) 

EDIT: Вот моя база кода:

 void reverse(char word[]); void main() { char word[MAX_SIZE]; cout << endl <> word; cout << "You entered the word " << word << endl; reverse(word); cout << "The word in reverse order is " << word << endl; } void reverse(char myword[]) { int i, temp; j--; for(i=0;i<(j/2);i++) { temp = myword[i]; myword[i] = myword[j]; myword[j] = temp; j--; } } 

    Несмотря на то, что это выглядит довольно домашнее задание, могу ли я предложить:

     void reverse(char word[]) { int len=strlen(word); char temp; for (int i=0;i 

    или, что еще лучше, classическая реализация XOR:

     void reverse(char word[]) { int len=strlen(word); for (int i=0;i 

    Поскольку это домашнее задание, я укажу вам на решение, не давая вам ответа.

    Ваша reverse функция может изменить переданное word . Одна вещь, которую вам нужно знать, – это то, как долго слово (так что вы будете знать, сколько писем нужно перевернуть), вы можете получить это от функции strlen() . Если вам не разрешено использовать указатели, вы можете использовать индексную переменную local int .

    Если мы говорим о C-Strings, то ваша функция должна быть

     void reverse(char word[],size_t wordlen) 

    Первый ответ из того же вопроса (это обман от « Обратного предложения в С?» )

    Это не делает то, что вы ищете, но получает вас совсем близко!

      int ReverseString(char *rev) { if(*rev!='\0') { ReverseString(rev + 1); putchar(*rev);//change this. } return 1; } 

    Кредиты на @devinb.

    // эта программа поможет вам найти максимальное и минимальное количество в массиве

     #include #include int main() {int max; int a[5]={12,1,0,4,5}; int min=a[0]; int i=1; max=a[0]; while(i<=4) { if (max < a[i]) max=a[i]; if (min > a[i]) min=a[i]; i++; } cout << min <<"\n"; cout << max; getch(); return 0; } в #include #include int main() {int max; int a[5]={12,1,0,4,5}; int min=a[0]; int i=1; max=a[0]; while(i<=4) { if (max < a[i]) max=a[i]; if (min > a[i]) min=a[i]; i++; } cout << min <<"\n"; cout << max; getch(); return 0; } 
    Давайте будем гением компьютера.