Breadcrumb
  1. Training
  2. Education & Training Catalog
  3. UMBC Training Centers
  4. Intermediate C Programming

Intermediate C Programming

This course continues the study of the C programming language using the C23 standard. The core language features covered in this course include functions, arrays, strings, pointers, dynamic memory
allocation, library functions, structures, and file I/O. Programming techniques covered by this course
include modularity, top-down design, documentation, debugging, and testing. Lab exercises throughout the course test and reinforce understanding of the concepts.

Cumulative graded assessments available for group training.

Provider Information

More courses from this provider:
Contact Information

UMBC Training Centers
6996 Columbia Gateway Drive
Columbia, MD 21046

Course Overview

Overall Proficiency Level
2 - Intermediate
Course Prerequisites

Students should have completed our Introduction to C Programming course or have equivalent knowledge of the C programming language. They should understand how to do the following in C:

- Build and run simple C programs.
- Name, declare, initialize, and manipulate numeric values in variables.
- Define and manipulate arrays.
- Create and call functions.
- Control program flow through conditionals and loops.
- Define, manipulate, and call functions with strings (character arrays).
- Perform basic I/O with a console and on-disk files using library functions.
- Declare, define, initialize, and manipulate new struct types.
- Search, parse, and split strings using library functions.
- Debug the behavior of a running program.

Training Purpose
Skill Development
Specific Audience
All
Delivery Method
Classroom
Online, Instructor-Led
Course Location

6996 Columbia Gateway Drive
Suite 100
Columbia, MD 21046

  • Classroom
  • Online, Instructor-Led

Learning Objectives

Upon completion of this course, students will be able to the following in C:
- Build complex programs.
- Declare, define, and manipulate pointers to data or functions.
- Dynamically allocate and deallocate memory as needed.
- Design large program components and APIs.
- Write and run unit tests.
- Inspect and manipulate bits of integers.
- Perform binary I/O with a console and on-disk files using library functions.
- Profile a running program for performance hotspots and improvements.
- Choose appropriate library functions for common tasks.

Framework Connections

The materials within this course focus on the NICE Framework Task, Knowledge, and Skill statements identified within the indicated NICE Framework component(s):

Feedback

If you would like to provide feedback on this course, please e-mail the NICCS team at NICCS@mail.cisa.dhs.gov(link sends email). Please keep in mind that NICCS does not own this course or accept payment for course entry. If you have questions related to the details of this course, such as cost, prerequisites, how to register, etc., please contact the course training provider directly. You can find course training provider contact information by following the link that says “Visit course page for more information...” on this page.

Last Published Date:

You have been selected to participate in a brief survey about your experience today with National Initiative for Cybersecurity Careers and Studies.

Would you like to participate in our survey?

If you accept you will be leaving the National Initiative for Cybersecurity Careers and Studies website and going to a third party site.
That site may have different privacy, security and accessibility policies than the National Initiative for Cybersecurity Careers and Studies site.
National Initiative for Cybersecurity Careers and Studies does not endorse any commercial products, services, programs or content on the third party website.
Thank you for visiting our site. We hope your visit was informative and enjoyable.