Capstone Brief: The Finance Core
One program composing structs, pointers, dynamic memory, files, and algorithms.
The mission
A personal finance core โ the computation and persistence heart of a ledger app, built from everything this course taught:
- a
Txnrecord: id, cents amount, category - operations: add, category totals, biggest expense, report line
- validation at every boundary
What the graders check
The capstone battery runs against four functions:
total_by_catโ category-filtered sumsbiggest_idxโ the index of the largest expenseafter_balanceโ running balance from a start valuefmt_reportโ one exact summary line, built with snprintf
Why these four
They force every layer at once: structs (records), pointers (arrays and out buffers), const discipline (read-only inputs), algorithms (max scan), and formatting (report). Change any piece and the whole thing still must hold together โ that is integration, the actual skill of engineering.
Beyond the battery
In a real project you would add: file persistence (module 16 โ a save/load pair), a menu loop (module 5-6), and unit tests per function. The sandbox battery verifies the core logic; the architecture around it is yours to build in the project gallery.