Foundations of Programming

  • Basic programming concepts: algorithm, program, compilation, interpretation. Integrated development environments. Data storage. Data types and variables. Standard input and output.
  • The C language. Basic data types. Terms and their evaluations. Control modes and their implementations in C. Sequential control. Conditional statements. Loops. Procedures and functions. Recursion. C program structure.
  • Pointers. Compound data types. Arrays. Relationship between pointers and arrays. Strings. Structures. Typecasting. Abstract data types. Linked lists and binary trees.
  • Functions with variable-length argument lists.
  • Command line arguments.
  • I/O implementation facilities. Formatted I/O operations. Access to files. Low-level I/O.
  • The C preprocessor. Macros. Conditional compilation.