CLA – C Certified Associate Programmer Certification


CLA – C Certified Associate Programmer is a professional certification that validates your ability to write correct and efficient C programs using fundamental programming techniques, standard C libraries, and preprocessor tools. It demonstrates your knowledge of C syntax and semantics, data structures, control flow, memory management, and modular program design.

By earning the CLA certification, you prove that you understand the principles of C programming, can work with arrays, pointers, structures, and functions, and are able to manage files and use the preprocessor to build modular, portable code. The CLA certification is ideal for individuals with a foundation in C looking to demonstrate their readiness for intermediate-level programming and further study in systems programming or embedded development.


CLA Badge

To earn the CLA – C Certified Associate Programmer certification, a candidate should demonstrate the ability to develop C programs that make use of:

  • the core syntax and semantics of the C language,
  • data types, operators, control flow, arrays, and pointers,
  • functions and structured programming techniques,
  • dynamic memory management and modular code design using header files and the C preprocessor.


CLA exam on Certification Roadmap

Exam Information


Exam name:

CLA – C Certified Associate Programmer


Exam code:

CLA-11-0x (x denotes the exam version)


Associated certifications:

CLE – C Certified Entry-Level Programmer
CLP – C Certified Professional Programmer


Prerequisites:

None


Exam version:

CLA-11-03 (Active)


Duration:

65 minutes (exam) + approx. 10 minutes (NDA/Tutorial)


Number of questions:

40


Format:

Single-select & multiple-select questions


Passing score:

70%


Cost:

USD 295 (Exam)
USD 345 (Exam + Retake)


Languages:

English


Learning resources:

C Essentials 2 – Cisco Networking Academy (Go to Cisco NetAcad)
C Essentials 2 (CE2) – OpenEDG Learning Platform Go to OpenEDG Edube)


Exam delivery channel:


Exam policies:


Exam syllabus:


Exam Vouchers:

Available via the OpenEDG Voucher Store





CLA Exam Syllabus


Exam Overview

The CLA – C Certified Associate Programmer certification exam validates an individual’s ability to understand and apply core C programming concepts. The exam assesses foundational programming knowledge, including the ability to declare and define variables and functions, use pointers and storage mechanisms, write control structures and loops, manipulate data, and interact with files and the preprocessor.

The CLA exam consists of 40 questions (items), each carrying a specific score value based on its complexity and objective area. The total number of points available is 100, which is then normalized and converted to a percentage score. To pass the exam, candidates must achieve a score of at least 70% – the result is based on total points earned, not an average across blocks.

The exam uses a psychometrically balanced scoring system. Each question is assigned a weight that reflects its difficulty and importance within the domain of C programming. This ensures that the final score provides a reliable and fair measure of the candidate's readiness for real-world programming tasks or more advanced certifications such as the CLP – C Certified Professional Programmer.

Exam Objectives by Block

Block 1 – Language and Structures: Declarations, Definitions, Lexicon, Structures
(Exam items: 12 | Weight: 29%)

  1. 1.1 Identify valid variable declarations and distinguish between definition and declaration.
  2. 1.2 Understand data structures: arrays, structs, and their initialization.
  3. 1.3 Apply proper use of storage classes (auto, static, extern).
  4. 1.4 Differentiate between identifiers, keywords, and constants in C.
  5. 1.5 Understand lexical elements, such as tokens and separators.
  6. 1.6 Recognize and define valid identifiers and apply naming rules.

Block 2 – Data Operations: Expressions, Pointers, Storage
(Exam items: 14 | Weight: 38%)

  1. 2.1 Evaluate expressions using arithmetic, relational, logical, and bitwise operators.
  2. 2.2 Understand type conversions, precedence, and associativity in expressions.
  3. 2.3 Declare, initialize, and manipulate pointers.
  4. 2.4 Apply pointer arithmetic and pointer dereferencing.
  5. 2.5 Use arrays and pointers interchangeably in appropriate contexts.
  6. 2.6 Understand memory layout and storage duration.
  7. 2.7 Describe scope, linkage, and lifetime of variables.

Block 3 – Control Flow: Control Statements, Loops, Instructions, Functions
(Exam items: 10 | Weight: 25%)

  1. 3.1 Use control statements: if, else, switch.
  2. 3.2 Implement loops with while, do-while, and for.
  3. 3.3 Apply break, continue, and goto in loop control.
  4. 3.4 Declare, define, and invoke functions.
  5. 3.5 Use function parameters and return values correctly.
  6. 3.6 Differentiate between call by value and call by reference using pointers.

Block 4 – Environment: Preprocessor, Stream I/O Operations
(Exam items: 4 | Weight: 8%)

  1. 4.1 Apply preprocessor directives such as #define, #include, #ifdef, and #undef.
  2. 4.2 Understand macro definitions and conditional compilation.
  3. 4.3 Perform basic file I/O using fopen, fclose, fscanf, and fprintf.
  4. 4.4 Use formatted output with printf and format specifiers (%d, %x, %o, %s).

MQC Profile

A Minimally Qualified Candidate (MQC) for the CLA – C Certified Associate Programmer certification understands the fundamental concepts of C programming and is able to write simple, correct, and well-structured C programs. The candidate can declare and define variables and structures, use valid syntax and naming conventions, and apply expressions, operators, and type conversions accurately. They are also familiar with how C programs are compiled, how memory is managed using pointers and storage classes, and how data is represented and manipulated in the C language.

In addition, the MQC demonstrates the ability to control program execution using conditional statements, loops, and function calls. They can define and invoke functions, pass arguments by value or by pointer, and use return values effectively. The candidate is capable of working with preprocessor directives for conditional compilation, organizing code with header files, and performing basic file input/output operations using streams. Overall, the MQC is ready to apply their skills in practical programming scenarios and to progress to more advanced C programming tasks or certifications.


Last updated: July 24, 2025
First published: November 15, 2012
Aligned with Exam CLA-11-03