diff options
Diffstat (limited to '1-16_longest-line.c')
-rw-r--r-- | 1-16_longest-line.c | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/1-16_longest-line.c b/1-16_longest-line.c deleted file mode 100644 index 1f6e556..0000000 --- a/1-16_longest-line.c +++ /dev/null @@ -1,52 +0,0 @@ -#include <stdio.h> - -#define MAXLENGTH 100 - -int get_line(char s[], int lim) { - /* Put as much as possible into a temp string, and count its length */ - int c, i; - - for (i = 0; i < lim && (c = getchar()) != EOF && c != '\n'; ++i) { - s[i] = c; - } - if (c == '\n') { - s[i] = c; - ++i; - } - s[i] = '\0'; - return i; -} - -void copy(char from[], char to[]) { - int i = 0; - - while ((to[i] = from[i]) != '\0') { - ++i; - } -} - -int main() { - int len, max; - - char line[MAXLENGTH]; - char longest[MAXLENGTH]; - - max = 0; - while ((len = get_line(line, MAXLENGTH)) > 0) { - if (len > max) { - max = len; - copy(line, longest); - } - } - - printf("\nThe longest line is %3d characters long.\n", max); - printf("----------------------------------------\n"); - if (max > 0) { - printf("%-s", longest); - if (max == MAXLENGTH && longest[max - 1] != '\n') { - printf("\n"); - } - } - - return 0; -} |