Вывод символов строки в обратном порядке
Не получается написать программу, которая читает строку входных данных, а затем печатает эту строку в обратном порядке. По условию можно запоминать входные данные в массиве значений типа char
; предполагается , что строка со стоит не более чем из 255 символов. Нужно обязательно воспользоваться функцией scanf()
со спецификатором %с , чтобы выполнять посимвольное считывание с устройства ввода. Как?
#include <stdio.h>
#include <locale.h>
#include <string.h>
int main(void)
{
setlocale(LC_ALL, "rus");
setlocale(LC_NUMERIC, "C");
char str[255];
int i, j;
printf("Введите строку:\n");
for (i = 0; i < 255; i++)
scanf("%c", &str);
for (j = strlen(str); j >= 0; j--)
printf("%c", str[j]);
return 0;
}
Вот так получается:
#include <stdio.h>
#include <locale.h>
#include <string.h>
int main(void)
{
setlocale(LC_ALL, "rus");
setlocale(LC_NUMERIC, "C");
char str[255];
int i, j;
printf("Введите строку:\n");
scanf("%s", str);
//for (i = 0; i < 255; i++)
//scanf("%c", &str);
for (j = strlen(str); j >= 0; j--)
printf("%c", str[j]);
return 0;
}
а через спецификатор %с, посимвольно, как по условию задачи - нет..??