Primary Navigation
  • About
  • Academics
  • Continuing Education
  • Admission
  • Student Life
  • Student Services
  • Library
  • News and Events
  • Giving
Introduction to C Programming

I.     Course Prefix/Number: CIS 220

       Course Name: Introduction to C Programming

       Credits: 4 (3 lecture; 2 lab)

II.    Prerequisite

Recommended: Knowledge of any programming language.

III.   Course (Catalog) Description

Course introduces procedural-oriental programming using the C programming language to solve business-related problems. Content includes writing, compiling, executing, and debugging programs, essential elements of the language, syntax, operators, data types, program controls, pointers, arrays, structures, and unions, input/output, and disk processing.

IV.   Learning Objectives

Completion of this course will provide the student with the tools to write simple C language programs using:

  • proper program syntax
  • operators
  • data types
  • standard I/O
  • program control
  • arrays (tables)
  • pointers
  • functions
  • structures and unions

V.    Academic Integrity

Students and employees at Oakton Community College are required to demonstrate academic integrity and follow Oakton's Code of Academic Conduct. This code prohibits:

• cheating,
• plagiarism (turning in work not written by you, or lacking proper citation),
• falsification and fabrication (lying or distorting the truth),
• helping others to cheat,
• unauthorized changes on official documents,
• pretending to be someone else or having someone else pretend to be you,
• making or accepting bribes, special favors, or threats, and
• any other behavior that violates academic integrity.

There are serious consequences to violations of the academic integrity policy. Oakton's policies and procedures provide students a fair hearing if a complaint is made against you. If you are found to have violated the policy, the minimum penalty is failure on the assignment and, a disciplinary record will be established and kept on file in the office of the Vice President for Student Affairs for a period of 3 years.
Details of the Code of Academic Conduct can be found in the Student Handbook.

VI.   Sequence of Topics

A. Development of C
   1. Brief history
   2. Character of C
   3. Use of C
   4. Portability
   5. Problem solving and program development
   6. Run-time function libraries

B. Introduction to C language
   1. Variable naming and type declaration
   2. Instruction syntax
   3. The preprocessor
   4. Compiling a C program
   5. Standard input and output
   6. Input and output redirection

C. Basic data types
   1. Integer
   2. Real number
   3. Character

D. Operators
   1. Assignment operator
   2. Arithmetic operators
   3. Relational operators
   4. Logical operators
   5. The ++ and – operators
   6. Bitwise operators
   7. The precedence operators
   8. The sizeof ooperator

E. Program control flow
   1. Decisions
      a. Unconditional branching (goto)
      b. Conditional branching
         1) (if – else)
         2) switch

   2. Iterative schemes
      a. while
      b. do – while
      c. for
      d. break and continue

F. Arrays (tables)
   1. One-dimensional
   2. Multidimensional
   3. Initializing arrays

G. Pointers
   1. Pointer variables
   2. Initializing pointers
   3. Levels of indirection
   4. Pointers and arrays
   5. Pointers to char and arrays of type char
   6. Arrays and pointer arithmetic
   7. Pointer operations

H. Functions and program structure
   1. Predefined functions
   2. Arguments an parameters
   3. Call by value
   4. The scope of variables
   5. Preprocessor facilities

I. Storage classes and type qualifiers
   1. Automatic versus static variables
   2. Global versus local variables
   3. Modules and external variables
   4. Blocks and nested blocks
   5. Storage classes for functions
   6. Type qualifiers const and volatile

J. Input and Output
   1. Opening and closing files
   2. Character input and output
   3. String input and output
   4. Reading block of data at a time
   5. Formatted input and output
   6. Unformatted input and output
   7. Random versus sequential access in files

K. Structures, unions, and enumerated types
   1. typedef
   2. Operations on structures
   3. Pointers to structures, nested structures
   4. Structures and functions
   5. Enumerated types
   6. Unions

VII.  Methods of Instruction

Lectures, class discussion and problem analysis, analysis of case studies, programming assignments.
Course may be taught as face-to-face, media-based, hybrid or online course.

VIII. Course Practices Required

A. Reading: The primary reading material will be the required text and lab manuals as needed.
B. Lab projects and problem solving: All programs must be documented to explain the algorithm being used, how the program is to be run, expected input and output.
C. Mathematics: Simple business mathematics.
D. Computer use: All lab assignments will be done on available microcomputers.
E. Lab practices: The students will be allowed to develop their programs on whatever computer is available to them but will be required to demonstrate capability on the current equipment in the computer lab.

IX.   Instructional Materials

Note: Current textbook information for each course and section is available on Oakton's Schedule of Classes.

X.    Methods of Evaluating Student Progress

A.  Examinations and quizzes
B.  Lab assignments
C.  A minimum of eight lab assignments will be completed.

XI.   Other Course Information



If you have a documented learning, psychological, or physical disability you may be entitled to reasonable academic accommodations or services. To request accommodations or services, contact the Access and Disability Resource Center at the Des Plaines or Skokie campus. All students are expected to fulfill essential course requirements. The College will not waive any essential skill or requirement of a course or degree program.