/* reverse2.c: Prints lines in reverse
* order from input
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAXWIDTH 81
#define MAXLINES 100
int main() {
char* lines[MAXLINES];
char line[MAXWIDTH];
int i, n;
for (n = 0; n < MAXLINES && gets(line) != NULL; ++n) {
if ((lines[n] = malloc(strlen(line)+1)) == NULL)
exit(1);
strcpy(lines[n], line);
}
for (i = 0; i < n; ++i) {
puts(lines[n-i-1]);
free(lines[n-i-1]);
}
return 0;
}