Comments on new Kelley and Pohl /A Book on C/, other C teaching stuff

Cliff Joslyn cjoslyn at bingvaxu.cc.binghamton.edu
Sun Mar 4 14:24:13 AEST 1990


A while back I asked this group for good refs to C textbooks.  This
semester I'm a new C teacher, and I'm reconsidering the text and my
methods going into the summer semester. 

We rejected the old Kelly and Pohl's /A Book on C/ because it seemed
really insufficient and incoherent.  Eventually I settled on Kochan's
/Programming in ANSI C/, which is OK, if a bit shallow on technical
details, examples, and exercises.  Now they've produced a second
edition, which is significantly revised.  It is much more in depth, with
a lot of care to pedagogical devices and sufficient depth on important
topics.  I've also been referred to Tom Plum's /Learning to Program in
C/.  Is it ANSI?  We need that. . .

The other problem I've been struggling with all through this class is a
bit of an *ordering* problem.  Are there opinions on the right order to
introduce subjects in? For example: arrays, structures, unions, then
pointers, in order to talk about pointers to aggregate types of all
kinds; or arrays and pointers together for the conceptual tightness,
then what about structures and unions before or after? Control flow
statements before or after functions? Defined constants and macros soon
after functions in order to write good code soon, or deal with the whole
preprocessor towards the end as an "advanced" feature?

An overall question is whether to "preview" useful but perhaps
potentially dangerous features which the student must accept on faith
until dealt with sufficiently later on, or to rigorously introduce
features in depth and in logical order.  Examples: scanf() seems
necessary early on, but I can't explain &num then or #include <stdio.h>
in depth; using function return values before explanations of function
declarations and prototypes; etc.  This goes to the question of whether
a first "tutorial chapter" with a preview is a good idea (K+R, Kelley
and Pohl) or not (Kochan). 

Any help would be appreciated. . .
-- 
O------------------------------------------------------------------------->
| Cliff Joslyn, Cybernetician at Large, cjoslyn at bingvaxu.cc.binghamton.edu
| Systems Science, SUNY Binghamton, Box 1070, Binghamton NY 13901, USA
V All the world is biscuit shaped. . .



More information about the Comp.lang.c mailing list