Course Details

Course Code

BIT 103 A/BIT 103 B/COMP 200/COMP 103/BIT 100

Course Name

STRUCTURED PROGRAMMING PRINCIPLES (Using C)

Credit Hours

3.5

Lecturer

Mr Mogoi OB

Email Address

bartmogoi@kisiiuniversity.ac.ke

 

Prerequisite: BIT 100 / COMP 103 (Fundamentals of programming)

Contact Hours: Lectures 45 and Practicals/Tutorials 15

1.0 Purpose of the course

The course is to provide a strong base in the principles and practice of procedural/functional programming. A high level programming language like C is to be used. The students are to cover both theoretical principles and hands on practical skills. The main concepts to cover include program structure, data structures, syntactical and semantic correctness, planning and segmentation in programming as well as working with data files.

1.1 Expected learning outcome of the course

By the end of the course units the learner will be will be able to:

                i.        Gain comprehensive knowledge about structured oriented programming;

              ii.        Have knowledge in planning and organization of programming projects;

             iii.        Knowledge and techniques of evaluating syntactic and semantic correctness of a computer program.

             iv.        Strong practical basis in programming.

 

 

 

 

 

 

 

 

 

 

 

 1.2 Course Content

Fundamental techniques of using a structured language for the solution of a variety of problems. Facts about C and why use C?, C environment set up, Operators in C programming, C compile and execute, C basic syntax and tokens Integer types, floating point types and void types, Variable declaration in C, Variable initialization, Lvalues and Rvalues, Floating point literals, character constants, string literal, Defining constants, conditional statements, C Loops, C functions, advanced data types, Defining a function, Function declaration, calling a function, function arguments, C scope rules, Local variables, global variables and formal parameters. C arrays: declaring, initializing and accessing arrays. Pointers, dynamic memory allocation and dynamic structures, working with files, GUI.

 

Week

Topic

Sub-Topics

 

1

 

C Fundamental techniques

·         Introduction to C

·         Using a structured language for the solution of a variety of problems

·         Introduction to  structured programming

 

2

Facts about C and why use C

·         Benefits of C Language

·         Key Features of C Programming Language

·         C Basic Commands

#include

int main()

Opening and closing Curly braces

Comments in C

Printf

Getch()

return 0

return

\t

%d

Scanf

 

4

Operators in C programming

·         Arithmetic Operators

·         Relational Operators

·         Logical Operators

·         Assignment Operators

·         Operators Precedence in C

 

5

C compile and execute

·         C compilers

·         C IDE – Turbo C, Dev C++

·         My First C program

·         Debugging

6

CAT 1

PRACTICAL ASSIGNMENT

6

C basic syntax and tokens

·         C scope rules:

Local variables

global variables and formal parameters

·         Data types:

Integer types,

Floating point types and void types,

Double

Char

String

Boolean

·         Variable declaration in C,

·         Variable initialization,

·         Lvalues and Rvalues,

·         Floating point literals,

·         Defining constants, character constants, string literal

 

7

Conditional statements

 

·         Decision-making control statements

Simple if statement

If-else statements

Nested if-else statements

else-if ladder

 

8

C Loops

 

·         While loop

·         Do while loop

·         Switch case

·         For Loop

 

9

C functions

·         Defining a function,

·         Function declaration,

·         Calling a function,

·         Function arguments

9

CAT 2

CAT 2 PRACTICAL PROJECT

PRESENTATION

 

10

 

Advanced data types

·         C arrays:

Declaring, initializing and accessing arrays.

Pointers, dynamic memory allocation and dynamic structures,

Working with files,

GUI  

11

ADMINISTRATION OF EXAMS

SEMESTER EXAMS

12

ADMINISTRATION OF EXAMS

SEMESTER EXAMS

 

1.4 Mode of delivery:

The course will be taught by using lectures, practical demonstrations, tutorials and assignments.

1.5 Instructional Materials and/or Equipment:

Audio visual aids in lecture rooms Resource persons, textbooks, hand-outs, LCD projectors, laptops/computers, discussion aids, chalk/white boards, DVDs, and e-journals.

1.6 Course assessment

Course work (Assessments and tests) 40%

Final Examination 60%

Total 100%

1.7 Core Reading Materials for the course

     i.        C Programming Language by Brian W. Kernighan, Dennis M. Ritchie, 2nd Edition, 1989

   ii.        C: A Reference Manual (5th Edition) by Samuel P. Harbison, 2004

  iii.        Wu T Norman Theodore 1997, An introduction to programming, MC Graw Hill Balagurusamy E., Programming in ANSI C. TATA, MCGraw Hill.

  iv.        Brian K.W. & Ritche D.M, The C Programming language, Prentice-Hall

 

1.8 Recommended Reference Materials

     i.        Baday K. ANSI C, Problem solving and programming, Prentice-Hall

   ii.        Brian K.W. et al, C programming Language 2nd edition, Prentice -Hall

  iii.        Cormen et al, An introduction to Algorithms, MIT press