Вы должны использовать константу для объявления массива следующим образом:
char normal[a]={};
char reverse[a]={};
Вместо этого вы можете выделить память следующим образом:
char* normal = (char*)calloc(a+1, sizeof(char));
char* reverse = (char*)calloc(a+1, sizeof(char));
и освободить ее, как только закончите, используя ее.
+1
потому что вы должны учитывать конечный нулевой символ. Я не думаю, что разрешить учетную запись пользователя - это хорошая идея, если только ваши пользователи не будут программистами на C ... Лучше поменяйте a = nbre-1;
на a=nbre;
.
Наконец, вы должны былинапишите свой цикл for следующим образом:
for (int i = 1; i <= a; i++) {
reverse[i-1] = normal[a - i];
}
Я внес много изменений в ваш цикл for. Я позволю вам сделать домашнее задание, чтобы понять, почему.