How williamgherman/c-solutions works
This repository is a collection of independent solutions to exercises and projects from chapters 2–27 of C Programming: A Modern Approach, not one integrated application. The typical workflow is a learner selecting a chapter program, compiling it as directed, and running it; individual programs then handle their own input and produce output. The map highlights representative inventory, text-processing, and data-structure examples, including the indexed core modules. Most programs were not sampled, so the graph does not infer connections between them.
Main entry points: inventory.c Array inventory · 03/inventory2.c List inventory · 10/inventory2.c File inventory · line.c Text justification
Components 20
Inventory programs
- Array inventory
16/projects/04/inventory.c - List inventory
17/projects/03/inventory2.c - File inventory
22/projects/10/inventory2.c - Inventory types
16/projects/04/inventory.h - Inventory sort
16/projects/04/quicksort.h - Inventory input
16/projects/04/readline.h - List input
17/projects/03/readline.h - File input
22/projects/10/readline.h
Text processing
- Text justification
15/projects/01/line.c - Line interface
15/projects/01/line.h - Line input API
15/projects/04/readline.h
Data structures
- Stack API
19/projects/03/stackADT.h - Stack client
19/projects/03/stackclient.c - Linked stack
19/exercises/06/stackADT3.c - Stack client
19/projects/01/stackclient.c - Stack interface
19/projects/01/stack.h - Queue client
19/projects/06/queueclient.c - Queue interface
19/projects/06/queue.h
Other solutions
- RPN calculator
19/projects/02/stackclient.c
Other components
- Learner
Connections 17
- Learner → Array inventory: runs example
- Learner → List inventory: runs example
- Learner → File inventory: runs example
- Learner → Text justification: runs example
- Learner → Stack client: runs example
- Learner → Queue client: runs example
- Learner → RPN calculator: runs example
- Array inventory → Inventory types: uses types
16/projects/04/inventory.c - Array inventory → Inventory sort: calls sort
16/projects/04/inventory.c - Array inventory → Inventory input: reads input
16/projects/04/inventory.c - List inventory → List input: reads input
17/projects/03/inventory2.c - File inventory → File input: reads input
22/projects/10/inventory2.c - Text justification → Line interface: implements interface
15/projects/01/line.c - Stack client → Stack API: calls operations
19/projects/03/stackclient.c - Linked stack → Stack API: implements interface
19/exercises/06/stackADT3.c - Stack client → Stack interface: calls operations
19/projects/01/stackclient.c - Queue client → Queue interface: calls operations
19/projects/06/queueclient.c