vertical graphics bar

Home

Back

 

Basis Year, Semester 2, spring 2008 - C programming

    Teacher: Andrea Valente (aaue.dk/~av)

    Book:


C Programming for the Absolute Beginner, Second Edition (For the Absolute Beginner)
Michael Vine
Course Technology PTR
ISBN: 1598634801 (ISBN-13: 978-1598634808) (amazon)

    Exam solutions: here

    Old exam (test yourself): here

    Pensum: here

    Course plan:

Lecture nr: Date: Topic: Literature: Comments:
1 12/2 B204 8:30 Introduction
First C program. How to install CYGWIN and CGG. Execute a program on paper.
chapter 1, Challenges
2 26/2 B204 8:30 Algorithms
Top-down modeling. The typical algorithm and its implementation in C (using variables, scanf, printf, assignment). Data-types: numbers and operators.
chapter 2
3 4/3 B204 8:30 Conditionals
How to express choice. Input validation.
A small project: define and implement a 7 segment display.
Create random values.
chapter 3
4 11/3 B204 8:30 Loops
How to repeat actions: while, for do-while loops.
Some classical math problems (and their solution).
chapter 4 Exercise: estimate (in n steps) PI/4, using this formula:
5 18/3 B204 8:30 Functions
Top-down modeling and modularity.
Function == behavior of a component, so nested components become functions calling other functions. Procedural abstraction.
chapter 4 Examples of Textual User Interface (source and executables)
And a simple game (using my_conio library).
Easter vacation
6 25/3 B207 8:30 Arrays
Introduction, declaration, use, passing an array to a function, ... (chapter 6, part of 7 and8)
Binary and Hexadecimal
Conversion, bit-wise operators
How to program the ELEXOL I/O USB card
Specs, simple library to set/read pins on the card, examples.
Slides.
Programming the I/O Card and the Datasheet.
7 28/3 B207 8:30 Pointers and strings
Strings as array of characters. Special operators for strings.
Algorithms for string manipulation. ...
AI programs: can string manipulation simulate intelligence? (see here)
chapter 6,7
8 15/4 B204 8:30 Data structures and allocation
Struct, typedef, union. Dynamic memory allocation.
chapter 8 (examples here)
9 22/4 B204 8:30 Files
Text files, CSV files, and PGM image files.
chapters 11 (examples ZIP)
10 6/5 B204 8:30 Old exercises and documentation
Doxygen (1, 2, 3)

vertical graphics bar

Department for Software, Electronics og Mediatechnology - Aalborg University Esbjerg - Niels Bohrs Vej 8 - 6700 Esbjerg - Denmark