From 5018e06c580dd21c958ec1672c26a3448faf0c55 Mon Sep 17 00:00:00 2001 From: zlg Date: Wed, 13 Feb 2013 20:48:44 -0600 Subject: Add license file, reorganize project --- 1-13_word-length-histogram.c | 76 -------------------------------------------- 1 file changed, 76 deletions(-) delete mode 100644 1-13_word-length-histogram.c (limited to '1-13_word-length-histogram.c') diff --git a/1-13_word-length-histogram.c b/1-13_word-length-histogram.c deleted file mode 100644 index d3115a5..0000000 --- a/1-13_word-length-histogram.c +++ /dev/null @@ -1,76 +0,0 @@ -#include -#define IN 1 -#define OUT 0 -#define MINWLENGTH 2 -#define MAXWLENGTH 20 - -int main(void) { - /* Rundown of variables: - * i, j = reusable placeholder variables - * state = inside or outside a word - * ltrs = letter count - * wrds = word count - * lines = you should be shot if you don't know - * lengths = an array that keeps track of how often words up to x chars long - * occur. - */ - - int state, ltrs, wrds, lines, wlen, i, j; - int lengths[MAXWLENGTH]; - for (i = 0; i <= MAXWLENGTH; ++i) { - lengths[i] = 0; - } - - ltrs = wrds = wlen = 0; - lines = 1; - state = OUT; - // Capture input until it ends - while ((i = getchar()) != EOF) { - // If it's whitespace, we've exited a word - if (i == '\n' || i == ' ' || i == '\t') { - if (state == IN) { - ++wrds; // ...and should increase the count. - state = OUT; - /* Check to see if the word is eligible to be counted. */ - if (wlen <= MAXWLENGTH) { - ++lengths[wlen]; - } - // Reset our word length now. - wlen = 0; - } - /* If it's a new line, we're still out of a word but need to increment the - line count */ - if (i == '\n') { - ++lines; - } - } else { - /* If nothing else, we know it's just a random character or a letter. */ - state = IN; - ++wlen; - } - /* Everything that's input counts as a letter. */ - ++ltrs; - } - - printf("\nWORD LENGTH FREQUENCY\n "); - for (i = 5; i < 80; i += 5) { - printf(" %2d", i); - } - - printf("\n"); // End the chart heading. - j = MINWLENGTH; - while (j <= MAXWLENGTH) { - i = lengths[j]; - if (i > 0) { - printf("%2d | ", j); - while (i > 0) { - printf("#"); - i = i-1; - } - printf("\n"); - } - ++j; - } - printf("%d words, %d chars, %d lines.\n", wrds, ltrs, lines); - return 0; -} -- cgit v1.2.3-54-g00ecf