Implemented KNR C Exercise 1-12, reusing mostly modified code from my previous (optional) implementaiton of KNR C's example wordcounting program.

This commit is contained in:
Reina Harrington-Affine 2025-08-16 02:14:40 +00:00
parent 2523043172
commit dbf602e13d

24
KNR C/ex1_12.c Normal file
View file

@ -0,0 +1,24 @@
#include <stdio.h>
/*Rewriting the wc program from pge 21/22 of KNR C, because the book does it in a way that I think is silly, and because I can.*/
int nl, nw, nc, state = 0;
#define IN 1 /*State when selected character is in a word*/
#define OUT 0 /*State when selected character is a newline, space, or tab (outside a word)*/
int main(){
for(int a = getchar(); a != EOF; a = getchar()){
++nc;
if(a == '\t' || a == ' ' || a == '\n'){
state = OUT;
putchar('\n');
} else {
state = IN;
putchar (a);
}
}
return 0;
}