Hello, I am currently working on a exercise in K&R book which by the is an excellent book, but the solutions on the net really do not have any comments what so ever. Any help in clearing up my confusion would be greatly helpful. Before I ask questions, let me show you the code found on the interentQuestion 1: When the lengtharr[thisidx] is being initialized, does that make thisidx equal to zero or its just a first element?Code:#include<stdio.h> #defineMAXWORDLEN10 intmain(void) { intc; intinspace = 0; longlengtharr[MAXWORDLEN+ 1]; intwordlen = 0; intfirstletter = 1; longthisval = 0; longmaxval = 0; intthisidx = 0; intdone = 0; for(thisidx= 0; thisidx <= MAXWORDLEN;thisidx++) { lengtharr[thisidx]= 0; } while(done== 0) { c= getchar(); if(c== ''|| c == '\t'|| c == '\n'|| c == EOF) { if(inspace== 0) { firstletter= 0; inspace= 1; if(wordlen<= MAXWORDLEN) { if(wordlen> 0) { thisval= ++lengtharr[wordlen - 1]; if(thisval> maxval) { maxval= thisval; } } } else { thisval= ++lengtharr[MAXWORDLEN]; if(thisval> maxval) { maxval= thisval; } } } if(c== EOF) { done= 1; } } else { if(inspace== 1 || firstletter == 1) { wordlen= 0; firstletter= 0; inspace= 0; } ++wordlen; } } for(thisval= maxval; thisval > 0; thisval--) { printf("%4d | ",thisval); for(thisidx= 0; thisidx <= MAXWORDLEN;thisidx++) { if(lengtharr[thisidx]>= thisval) { printf("* "); } else { printf(" "); } } printf("\n"); } printf(" +"); for(thisidx= 0; thisidx <= MAXWORDLEN;thisidx++) { printf("---"); } printf("\n "); for(thisidx= 0; thisidx < MAXWORDLEN;thisidx++) { printf("%2d",thisidx + 1); } printf(">%d\n",MAXWORDLEN); getch(); return0; }
Question 2: Which part stores the word count in the array or is it being store at all?
Question 3: what doesdo, does it adds an element or what?Code:thisval = ++lengtharr[MAXWORDLEN];
The output of the code is on The C Programming Language Exercise 1-13
please scroll down.
Any help is greatly appreciated and thank you for your time in reading this lengthy post.
EDIT: the code is on the link as well, since I still don't know how to scroll the code on here.



LinkBack URL
About LinkBacks



