Index for Chapters 1-5A:

Symbols

%c, 49

%d, 49

%f, 49

%lf, 49

& address-of, operator, 51

&& and 148, 149, 154

|| or, logical 148, 149, 154

! not 148, 149, 154

- subtraction 59

* multiplication  45, 59

/ division 59

% modulas 59, 60

= assignment  46

== equal to 147

!= not equal 147

< less 147

<= less or equal  147

> greater  147

>= greater or equal 147

++ increment 224-226

-- decrement operator  225

\ backslash  121

/* comment, open  36

*/ comment, close  36

\n escape sequence, newline 49, 50

# number, symbol 34

A

abs, 109

absolute value, 109

abstraction, 22

abstraction, procedural, 122

accumulator, 216

actual argument, 127, 134

address, memory cell, 6

address-of, operator (&), 51

algorithm, 23, 96

amortization table, 272

ampersand, 51, 53

analysis, 22, 25

and (&&), 148, 149, 154

ANSI, 34

apostrophe, 44

application, 15

argument, actual, 127, 134

argument, correspondence, 132, 133

argument, function, 48

argument, input, 125, 128, 130

argument, output, 125

argument, type of, 108, 134

arithmetic expression, 58

assembly language, 16, 17

assignment, logical, 154

assignment, mixed-type, 62

assignment, statement, 45, 46, 87, 88

associativity, 64

Atanasoff, 2

automobile safety ratings, 163

B

backslash (\), 121

ballistics tables, 2

base 2, 28

batch mode, 76, 241

Berry, 2

binary, digit, 7

binary, file, 18, 19

binary, number, 5

binary, operator, 63

bit, 7, 28

blank line, output of, 49

blank line, use for readability, 56

boolean (logical), 148, 150

booting computer, 14

breakpoint, 261

buffered read, (scanf), 35, 36, 47, 49, 51, 53, 88

bug, 80

byte, 7, 9, 28

C

C language, 17, 34

%c, 49

C++, 17

cable Internet access, 13

call, function, 48, 114, 121, 129, 134, 137

car loan, 140

case, 190, 198

case study, circle area, circumference, 97

case study, coin collection evaluation, 67

case study, collecting area for solar house, 254

case study, drawing diagrams, 112

case study, miles-to-kilometers conversion, 25, 27

case study, water bill, 166

case study, water bill with conservation, 177

case study, weight of flat washers, 100

CD, 5, 6, 8

CD drive, 9

ceil, 109

cell, memory, 6, 28

Celsius, to Fahrenheit, 227-229

centimeters, from inches, 231

central processing unit, 3, 5, 6, 9

channel depth, 276

char, 42, 44, 87

character, 42, 44

character, comparison, 153

character, I/O, 49, 52

chip, computer, 2, 3

chip, microprocessor, 2, 3

close, comment, 36

close, file, 80, 88

coaxial cable, 13

Cobol, 17

code, reuse, 105

cohesive function, 175

command, 14, 29

command, line interface, 14

comment, 36, 56, 57, 96

comment, close (*/), 36

comment, open (/*), 36

compact disk, 5, 6, 8

comparison, character, 153

comparison, nested if and switch, 193

comparison, while and if, 213

compiler, 16, 18, 29

compiler, listing, 82

complement, condition, 156

complement, logical, 149

components, computer, 6, 28

compound, assignment operator, 220

compound, statement, 146, 187

compressed-gas cylinder contents, 204

computer, 2

computer, components, 6

computer, mainframe, 3

computer, notebook, 4

computer, palmtop, 4

computer, personal, 3

computer, workstation, 4

condition, 147, 197

condition, complementing, 156

condition, loop repetition, 213-215

constant, 36, 37, 87

constant, macro, 36, 37, 87

constant, macro, advantages, 175

constant, name of, 40

constant, numeric, 42, 43

contents, memory cell, 6

control, structure, 146

control, structure, repetition, 210

control structure, selection, 146, 158, 197

control, structure, sequential, 146

control, transfer to function, 121

controlling expression, 190

conversion, Celsius-to-Fahrenheit, 227-229

conversion, compass heading to compass bearing, 204

conversion, data type, 62, 63

conversion, distance, 78

conversion, Fahrenheit to Celsius, 91

conversion, inches to cm, 231

conversion, miles to kilometers, 25, 27, 79

copy, 47

correspondence, argument, 132, 133, 134

counting loop, 211, 212, 266-268

counting loop, negative step, 268

CPU, 3, 9, 28

cursor, 10, 11, 49, 50

cyclist deceleration, 143

cylinder production cost, 143

D

%d, 49

dam design, 90

data, computer, 28

data, file, 9

data, input, 20

data, retrieval, 7

data, storage, 7

data, type, 42, 43, 44, 87

data, type, expression, 61

database, management, 15

day number, 205

debug, 80

decimal places, 74

decimal point, move, 131

decision step, 166

decision table, 183

declaration, 37

declaration, local, 117, 130, 134

declaration, variable, 41, 42, 55, 87

decrement operator (--), 225

#define, 34, 37, 87

definition, function, 138

DeMorgan's Theorem, 156

design, 23, 25

design, top-down, 23

desk check, 23, 164

device, input, 5, 6, 10

device, output, 5, 6, 10

device, storage, 5, 6, 8

diagnostic calls to printf, 261

digital subscriber line, 13

digital video disk, 9

digits of number, 275

directive, preprocessor, 34, 36, 55, 87

directory, 9

directory display, 15

disk, 8

disk, compact, 5, 6, 8

disk, floppy, 5, 6

disk, hard, 5, 6

disk, zip, 5, 6, 8

display, table, 227

distance between points, 112

distance conversion, 78

division, 59

division, varying results in, 59

divisor, greatest common, 273

do, 250-253, 267, 269

documentation, program, 56, 96, 131, 136

double, 38, 42, 43, 87

double, format, 74, 75

double, output, 74, 75

do-while, 250-253, 267, 269

draft eligibility, 186

drive, CD, 9

driver, 132, 135

DSL, 13

DVD, 5, 6, 8

DVD drive, 9

E

e (in scientific notation), 43

earthquake characterization, 204

echo print, 76

Edison, 24

editor, 29

else, 158-161

else, associated with most recent if, 187

empty, data set, 241

endfile-controlled loop, 242

endfile-controlled loop, pseudocode, 242, 267

environment, integrated development, 19

equal to, (==), 147

error, == mistyped as =, 265

error, argument-parameter mismatch, 136

error, break omission in switch, 191-193, 197

error, careless input of character, numeric data, 83

error, comment inside another comment, 57

error, double variable as counter, 224

error, do-while that may execute zero times, 266

error, else is unexpected symbol, 196, 197

error, faulty data causes infinite loop, 244, 253

error, improper else, 264

error, incorrect results, 83

error, inequality test for loop repetition, 264

error, logic, 86

error, message, 80

error, misplaced blanks, 56

error, missing braces in if with compound tasks, 264

error, missing braces on multiple-statement loop body, 264

error, missing semicolon, 81

error, necessary #include omitted, 136

error, no parentheses around if condition, 196

error, non-variable operand of increment, decrement, 266

error, off-by-one loop repetition, 262

error, omission of brace ending switch, 192

error, omitted * in multiplication, 66

error, poorly designed sentinel loop, 240

error, quotation marks misused, 83

error, run-time, 83, 84

error, semicolon after for-loop header, 264

error, semicolon after if condition, 160

error, space in close-comment sequence, 81

error, syntax, 81

error, undeclared variable, 81

error, undetected, 83

error, using = in place of ==, 196

escape sequence, newline (\n), 49, 50

evaluation, expression, 63-66, 151

evaluation, short-circuit, 152

evaluation, tree, 64-66

even number, 155

ex, 109

executable file, 18, 19, 29

executable statement, 37, 45, 87

execute instruction, 10

execution, program, 5, 19, 20, 28, 38, 45, 121

execution, single-step, 261

exit, loop, 213

exp, 109

exponentiation, 109

expression, arithmetic, 58

expression, data type of, 61

expression, evaluation, 151

expression, evaluation, rules, 63

expression, logical, 148, 154

expression, mixed-type, 61

F

%f, 49

fabs, 109

factorial, 226

Fahrenheit, from Celsius, 227-229

failure, 24

fclose, 80,88

fetch instruction, 10, 28

field width, 73, 74

field width, too small, 73

FILE, 78

file, 9, 28

file, binary 18, 19

file, close, 80, 88

file, data, 9

file, executable, 18, 19, 29

file, header, 34, 35, 36

file, input, 76, 78, 88, 234

file, object, 18, 19

file, open, 78, 88

file, output, 9, 76, 78, 88

file, pointer, 78, 87

file, program-controlled, 78, 87, 88

file, server, 11

file, source, 17, 18, 119

file, text, 17, 18

final exam score needed, 92

flag, 251

floor, 109

floppy disk, 5, 6

flowchart, 158, 159, 187, 189, 214

fopen, 78, 88

form, source file, 55, 119

form, program, 119

formal parameter, 127, 130, 134

format, int, 73

fomat, double, 74, 75

format string, 48, 53

formulas, writing, 66

Fortran, 17

fprintf, 78, 80, 88

fractions, product of, 92

freezer temperature, 91

fruit flies population, 162

fscanf, 78, 80, 88

fscanf, result value, 242

function 19

function, argument, 48, 107

function, as a black box, 106

function, call, 48, 87, 114, 121, 129, 137

function, cohesive, 175

function, computation, 137, 138

function, data area, 134, 135

function, definition, 116, 117, 130

function, driver, 132, 135

function, for loop processing, 237

function, heading, 118, 130

function, input, 47, 88

function, instructions, 123

function, key, 11

function, library, 108

function, main, 37, 38, 55, 87

function, memory for, 134, 135

function, output, 48, 88

function, predefined, 105

function, prototype, 115, 116, 137

function, single-result, 127, 128, 130, 137, 138

function, trigonometric, 109

function, void, 116, 126

function, with input arguments, 125, 128, 130

function, with multiple arguments, 131

function, with output arguments, 125

function, without arguments, 114, 137, 138

function, without parameters, 137

function, without results, 137

G

gas pressure, volume, temperature, 275, 276

gasoline storage tank, 232-236

gearbox speeds ratio, 143

gigabyte, 9

graph, sine wave, 278

graphical user interface, 11, 14, 15

grass cut time, 92

greater (>), 147

greater or equal (>=), 147

greatest common divisor, 273

GUI, 11, 14, 15

H

.h files 34, 35

hand trace, 164

hard copy, 11

hard disk, 5, 6

hardware, 3

header file, 34, 35, 36

heading, function, 118, 130

heat from furnace, 92

high-level language, 16, 17

house cost, 142

I

icon, 11

IDE, 19, 29

identifier, 38

identifier, naming rules, 39, 87

identifier, standard, 38

if, multiplier-alternative, 180, 197, 198

if, statement, 158-161

if, statement nested, 179, 198

if, statement nested vs. sequence, 180

implementation, 23, 25

implementation, multiple-function program, 170

import (include), 34, 35, 36, 87

#include, 34, 35, 36, 87

indentation, 56

indentation, if statement 161

indentation, for loop, 224

infinite loop, 215

information flow, 132

initialization, loop control variable, 214, 222

input, 47, 48, 88

input, argument, 125, 128, 130

input, data, 20

input, device, 5, 6, 10

input, file, 76, 78

input, files, multiple, 255

input, list, 53

input, skipping spaces on, 53

input, subproblem, 176

input/output, character, 49, 52

input/output, numeric, 49, 51

input/output redirection, 76, 77

install, 16

instructions, display, 123

int, 38, 42, 43, 87

integer, 42, 43

integer, division, avoiding, 62, 63

integer, format, 73

integer, output, 73

integrated development environment, 19, 29

interactive mode, 76

interface, command-line, 14

interface, graphical user, 11, 14, 15

Internet, 11, 28

Internet access, cable, 13

invalid data input, 242

J

Java, 17

jet fighter acceleration, 93

K

kernel, 194

keyboard, 3, 5, 6, 10

kilobyte, 9

L

LAN, 11, 12, 28

language, assembly, 16, 17

language, high-level, 16, 17

language, machine, 16, 17

language, programming, 2

left associativity, 64

length, identifier, 39

less (<), 147

%lf, 49

library, 34, 35

library, standard, 34, 35

light bulb brightness, 195

light bulb life, 192

line, numbers program, 34

linker, 18, 19, 29

Lisp, 17

listing, compiler, 82

ln, 109

loader, 18, 19, 29

loan, amortization table, 272

loan, car, 140

local area network, 11, 12

local declaration, 117, 130, 134

local variable, 118, 130, 134

log, 109

log10, 109

logarithm, 109

logic error, 86, 198

logical complement, 149

logical expression, 148, 154

loop, 210

loop, body, 210

loop, boundaries, 263

loop, control variable, 212, 214, 222

loop, counter-controlled, 212, 266-268

loop, counting, 211, 212, 266-268

loop, counting, with negative step, 268

loop, design questions, 239

loop, do-while, 250-253, 267, 269

loop, endfile-controlled, 211, 242

loop, exit, 213

loop, for, 222, 267, 268

loop, general conditional, 211, 267

loop, infinite, 215

loop, input validation, 211, 267

loop, kinds, 211

loop, one-trip, 250

loop, repetition condition, 213, 215

loop, sentinel-controlled, 211, 238, 240-243, 266-268

loop, while, 212-215, 267, 268

loop, zero-trip, 250

loop, nested, 245-249

lumber, engineering properties, 277

M

machine language, 16, 17

Macintosh OS, 14

macro, constant, 36, 37, 87

main, function, 37, 38, 55, 87

main memory, 5, 6

mainframe, 3

maintenance, 24, 40, 175

math.h, 36

media, storage, 8

megabyte, 9

memory, 5, 17, 28

memory, allocation, 122, 134

memory, cell, 6, 28

memory, main, 5, 6

memory, random access, 8

memory, read-only, 8, 14

memory, secondary, 5

method, software development, 21, 25

microprocessor, 2, 3

microwave tower, 12

mileage reimbursement, 90

miles to kilometers, 25, 27, 79

mixed-type assignment, 62

mixed-type expression, 61

modem, 13

modular programming, 137

modulas (%), 59-60

monitor, 3, 5, 6, 10

mouse, 3, 5, 6, 11

MS-DOS, 14

multiple-alternative if, 180-185, 197, 198

multiplication, 45, 59

multiply, list of numbers, 219

music teacher's discount, 203

N

\n, 49, 50

names valid identifier, 39

natural logarithm, 109

negation, 149

negative step counting loop, 268

nested if, 179, 198

nested if, comparison to switch, 193

nested loops, 245-249

network, local area, 11, 12

network, wide area, 11, 12

newline (\n), 49, 50

noise loudness, 182

not (!), 148, 149, 154

not equal (!=), 147

notation, scientific, 43

notebook, 4

number, floating point, 49

number, symbol (#), 34

numeric I/O, 49, 51

O

object, file, 18, 19

object, program, 29

off-by-one error, 262

open, comment, (/*), 36

open, file, 78, 88

operand, 58

operating system, 13, 29

operation, input, 47, 48

operation, output, 48, 88

operator, %, 59-60

operator, &, 51

operator, addition (+), 59

operator, address-of (&), 51

operator, and (&&), 148, 149, 154

operator, assignment (=), 46

operator, binary, 63

operator, compound assignment, 220

operator, decrement (--), 225

operator, division (/), 59

operator, equal (==), 147

operator, greater (>), 147

operator, greater or equal (>=), 147

operator, increment, (++), 224-226

operator, less (<), 147

operator, less or equal (<=), 147

operator, modulas (%), 59, 60

operator, multiplication (*), 45, 59

operator, not (!), 148, 149, 154

operator, not equal (!=), 147

operator, or (||), 148, 149, 154

operator, precedence, 64, 150

operator, quotient (/), 59, 60

operator, relational, 147

operator, remainder, (%), 59, 60

operator, subtraction, (-), 59

operator, unary, 150

or, logical ( || ), 148, 149, 154

OS, 13

OS/2 Warp, 14

output, 48, 88

output, argument, 125

output, device, 5, 6, 10

output, file, 9, 76, 78

output, integer, 73

output, program, 20

output, real number, 74, 75

output, subproblem, 176

P

palmtop computer, 4

parameter, formal, 127, 130, 134

parameter, type of, 134

parentheses, 63, 151

parse (scanf, sscanf), 35, 36, 47, 49, 51, 53, 88

percent operator, 59-60

percent sign, 204

personal computer, 3

pH, 189

placeholder, 48, 49, 51

point, Cartesian plane, 205

pointer, file, 78, 87

population increase, 237

postcondition, 131

postfix increment, 255

power company bills, 206

precedence, operator, 64, 150

precondition, 131

preprocessor, 34

preprocessor directive, 34, 36, 55, 87

print list, 48

printer, 5, 6, 11

printf, 35, 36, 48-49, 88

printf, diagnostic calls, 261

printing numbers, 49

problem statement, 25

problem-solving questions, 210

procedural abstraction, 122

processing unit, central, 3, 5, 6, 9

product accumulating, 219

program, 2, 5

program, execution, 5, 19, 20, 28, 38, 45

program, form, 55, 119

program object, 29

program, output, 20

program, source, 29

programming language, 2

projectile flight, 141

Prolog, 17

prompt, 14, 51

prototype, function, 115, 116, 137

pseudocode, 169

pseudocode, general conditional loop, 220, 267

pseudocode, endfile-controlled loop, 242, 267

pseudocode, sentinel-controlled loop, 238, 267

pseudocode, counting loop, 267

punctuation, 37

Pythagorean triples, 92

Q

quadratic equation roots, 110

questions, loop design, 239

quotation marks, misused, 83

quote, single, 4

quotient, 59, 60

R

RAM, 8

random access memory, 8

range specification, 152

read-only memory, 8, 14

readLine, (scanf), 35, 36, 47, 49, 51, 53, 88

real number, 42, 43

real number, output, 74, 75

real-time system, 3

refinement, algorithm, 23

remainder, 59, 60

repetition, 210

requirements, 21

reserved word, 38, 87

results, 20

retrieve value, 7

return, 38, 53-54, 88, 121

return result, 125, 130

reuse, 122

reuse, code, 105, 137

right associativity, 64

right justification, 73

Richie, Dennis, 34

ROM, 8, 14

rounding, 62, 63, 142

run-time error, 83

runner's speed, 142

S

satellite relay, 12

scale a number, 131

scanf, 35, 36, 47, 49, 51, 53, 88

scanf, result value, 242

scanf, with invalid data, 242

scanner, 5, 6

scientific notation, 43

scope, 134

secondary storage, 5, 6, 8, 28

selection, 146, 158, 197

sentinel, value, 238

sentinel-controlled loop, 211, 238, 240-242

sentinel-controlled loop, pseudocode, 238, 267

sequence, 146

server, file, 11

shell script, 194

ship classification, 190

short-circuit evaluation, 152

side effect, 224

side effect, unpredictable, 226

sin, 109

sine, 109

sine wave graph, 278

single quote, 44

skip remainder of line, 251, 252

skipping spaces on input, 53

slash-star, 57

Smalltalk, 17

software, 5

software development method, 21, 25, 29, 96, 136

sound, speed in air, 143

source file, 17, 18, 119

source file form, 55

source program, 29

space, use for readability, 56

speaker, 5, 6

speed, average needed, 136

sqrt, 106, 109

standard deviation, 273

standard identifier, 38

standard library, 34, 35

star-slash, 57

statement, assignment, 45, 46, 87, 88

statement, break, 191

statement, compound, 146, 197

statement, do-while, 250-253, 267, 269

statement, executable, 37, 45, 87

statement, extending over two lines, 56

statement, for, 222, 267

statement, if, 158-161

statement, nested if, 179, 198

statement, return, 53, 54, 88

statement, switch, 190, 198, 199

statement, while, 212-215, 267, 268

status, input, 242

stdio.h, 35, 48

storage, device, 5, 6

storage, media, 8

storage, secondary, 5, 6, 8, 28

store value, 7

stored program concept, 6

string, format, 48

structure, chart, data flow in, 167, 168, 176, 197

style, 29

style, constant macro names, 40

style, constant macros for readability, 175

style, eliminating leading blanks, 74

style, for statement format, 223

style, identifier names, 40

style, if statement format, 161, 163

style, names use in functions, 174

style, program, 40

style, use of comments, 57

style, use of spaces, indentation, 56

style, validating variable values, 185

subdirectory, 9

subtraction, 59

sum, accumulating, 42, 216

supercomputer, 3

switch, 190, 198, 199

switch, comparison to nested if, 193

syntax error, 81

syntax errors, listing with, 82

systems programming, 34

T

table, display, 227

tan, 109

tax table, 184

telephone line, 13

temperature at depth, 143

terabyte, 9

testing, 23, 25

testing, loop repetition, 214, 222

text file, 17, 18

toilet, low-flush, 92

top-down design, 23

trace, 218

trace, hand, 164, 198

trace, if statement, 165

trace, loop, 229

trace, program, 261

transaction processing, 3

transcript message, 189

triangle sides, 110

trigonometric functions, 109

true, 150

type, argument/parameter, 134

type, cast, 62

type, conversion, 62, 63

type, conversion, argument, 108

type, data, 42, 43, 44, 87

type, expression, 61

U

unary operator, 150

underscore, 39, 87

undetected error, 83

UNIX, 14, 34, 194

update, loop control variable, 214

user, 5

V

vacuum tubes, 2

variable, 41

variable, declaration, 41, 42, 55, 87

variable, local, 118, 130, 134

velocity, particle, 65

VMS, 14

void, 38, 130, 137

void, function, 116, 126, 138, 282

W

WAN, 11, 12, 28

while, 212-215, 267, 268

wide area network, 11, 12

wind speed categories, 190

Windows, 14

word processor, 15, 18

workstation, 4

World Wide Web, 11

WWW, 11

X

X Windows System, 14

Z

zip disk, 5, 6, 8