C Online Test

TestDome skill assessments are used by more than 6,000 companies and 450,000 individual test takers.

Jobseekers: Get a Certificate

Take a Practice Test

Companies: Try First, Pay Later

Sign Up To Use This Test

The C online test assesses candidates' knowledge of programming in the C language.

It's an ideal test for pre-employment screening. A good C developer needs to be able not only to solve problems using C but also understand the implications of low level optimizations.

This online test requires candidates to solve coding problems in C.

Recommended Job Roles
Back-End Developer
C Developer
Sample Candidate Report

Sample Free Questions

Quadratic Equation


C Arithmetic Public New

Implement the function find_roots to find the roots of the quadratic equation: ax2 + bx + c = 0. If the equation has only one solution, the function should return that solution as both roots. The equation will always have at least one solution.

The roots of the quadratic equation can be found with the following formula: A quadratic equation.

For example, the roots of the equation 2x2 + 10x + 8 = 0 are -1 and -4.

Watched Videos


C Arrays Pointers Public

Implement the count_views function. It accepts an array of pointers to the Viewer struct, the size of the array, and the character array with the video name. It should return the number of Viewers who have watched a Video with the name video_name.

For example,

Video videos[] = { {.name = "Soccer", .unique_views = 500},
                   {.name = "Basketball", .unique_views = 1000} };
Viewer viewer = {.username = "Dave", .watched_videos = videos,
                 .watched_videos_size = 2};    
Viewer *viewers[] = { &viewer };

calling count_views(viewers, 1, "Soccer") should return 1.



C Algorithmic thinking Sorting Public

Implement function sort_words that sorts an array of words that contain lowercase characters from english alphabet, in descending order, and is efficient with respect to time used.

For example, the array { "cherry", "orange", "apple" } should, after sorting, become { "orange", "cherry", "apple" }.

Use Free Questions On a Trial Plan

Premium Questions

The premium question library contains our unique, hand-crafted questions. We offer a refund if you find any of them answered online.

Allocate String, Copy Bit, Max Sum, Shipping, Init Range, Read Write Execute, Segment, Square, Tiles, Username, Internal Nodes, Battery, Increment, Strings Pointer, Count Letters, Descriptor, Run in Parallel, Increment
C Memory management Bit manipulation Algorithmic thinking Arithmetic Strings Pointers 2D array Pass by reference Regex Arrays Tree Language Pointer to pointer Higher order function Multithreading
Score Distribution
# of candidates
Pricing For Premium Questions