commit - ce680abd0aecc35c3967e6b940d84c652876e88e
commit + 93cf4d1819cdeaafea9da8c38d283e5e15e6ba77
blob - /dev/null
blob + d04b7ca3f5c8307fea7bc5561d50099c6f058b84 (mode 644)
--- /dev/null
+++ 1-17.c
+/* 1-17 Write a program to print all input lines that are longer than 80
+ * characters. */
+
+#include <stdio.h>
+
+#define MAXLINE 1000 /* maximum input line size */
+
+int getlin(char line[], int maxline);
+
+/* print all lines greater than 80 chars */
+int main() {
+ int len; /* current line length */
+ const int min = 81; /* minimum length line */
+ char line[MAXLINE]; /* current input line */
+
+ while ((len = getlin(line, MAXLINE)) > 0) {
+ if (len >= min) {
+ printf("%s", line);
+ }
+ }
+ return 0;
+}
+
+/* getlin: read a line into s, return length */
+int getlin(char s[], int lim) {
+ int c, i;
+
+ for (i=0; i<lim-1 && (c=getchar())!=EOF && c!='\n'; ++i)
+ s[i] = c;
+ if (c == '\n') {
+ s[i] = c;
+ ++i;
+ }
+ s[i] = '\0';
+ return i;
+}