Maricopa Community Colleges  CSC210   19926-19965 
Official Course Description: MCCCD Approval: 02/27/96
CSC210 19926-19965 L+L 3 Credit(s) 5 Period(s)
Advanced Programming Applications in C
Advanced topics in C language, including C standard library, advanced C Struct programming, and drivers. Advanced applications in some of the following areas: graphics, data structures, hardware-controlling software. Prerequisites: CSC110, or (CSC101 and CSC203AA), or permission of instructor.
Go to Competencies    Go to Outline
 
MCCCD Official Course Competencies:
 
CSC210   19926-19965 Advanced Programming Applications in C
1. Compare and contrast the various C memory models. (IA)
2. Write C language programs with advanced pointer techniques. (IA)
3. Select appropriate functions from the C standard library and utilize them in a program. (IB)
4. Use the Struct capabilities of the C language in a program. (IC)
5. Describe the use of hardware device drivers to control various pieces of computer hardware. (ID)
6. Select non-ANSI functions from the C library and use them in a program. (VA)
7. Create programs that incude advanced graphics techniques. (VB)
8. Select an appropriate data structure for an application and implement it in a C language program. (VC)
9. Utilize recursive techniques in a program. (VC)
10. Write a device driver. (VD)
11. Write a program that interfaces with assembly language code. (VD)
12. Explain the techniques needed to make a C program operate correctly in a network environment. (VD)
Go to Description    Go to top of Competencies
 
MCCCD Official Course Outline:
 
CSC210   19926-19965 Advanced Programming Applications in C
    I. Review of C language
        A. Types
        B. Variables
          1. Simple types
          2. Arrays
        C. Operators
        D. Flow control
        E. Data structures
        F. Pointers
        G. C preprocessor
        H. Memory models and far pointers
      II. Standard library
          A. I/O library
          B. ANSI String and character functions
          C. ANSI Mathematical functions
          D. Other ANSI functions
        III. Advanced C Struct Programming
            A. Writing C programs with Structs
            B. Applications of Structs
              1. Database applications
              2. Screen applications
            C. Advanced Struct techniques
          IV. Driver programs
              A. Types of drivers for different hardware
              B. Selecting drivers for the current hardware
            V. Optional topics
                A. Additional functions
                  1. Additional string and character functions
                  2. Additional mathematical functions
                  3. Time, date, and other system-related functions
                  4. Screen and graphics functions
                B. Graphics
                  1. Drawing functions
                  2. Colors
                  3. Styles
                  4. Presentation graphics
                  5. Pop-up windows in graphics
                  6. Applications with graphics
                C. Further data structures and implementation techniques
                  1. Dynamic memory allocation
                  2. Linked lists
                  3. Stacks
                  4. Queues
                  5. Trees
                  6. Recursion
                  7. Sorting
                  8. Searching
                  9. Building a collection of reserved words
                D. Hardware-controlling software
                  1. Writing device drivers
                  2. Operating systems
                  3. Network programming
                  4. Interfacing with assembly language
                  5. Interfacing with the operating system
            Go to Description    Go to top of Competencies    Go to top of Outline