#include #define MAXLINE 10 int _getline(char line[], int maxline); void reverse(char to[], char from[], int from_head); // reversing input string main() { int len; char line[MAXLINE]; char reversed[MAXLINE]; while ((len = _getline(line, MAXLINE)) > 0) { reverse(reversed, line, len); printf("%s\n", reversed); } return 0; } int _getline(char s[], int lim) { int c, i, j; for (i = 0; (c = getchar()) != '\n'; ++i) { if (i < lim - 1) s[i] = c; } j = i; if (j > lim - 1) j = lim - 1; s[j] = '\0'; return j - 1; } void reverse(char to[], char from[], int from_head) { int i; for (i = 0; i <= (from_head / 2); ++i) { to[i] = from[from_head - i]; to[from_head - i] = from[i]; } to[from_head+1] = '\0'; }