C Online Test
For jobseekers
Practice your skills and earn a certificate of achievement when you score in the top 25%.
Take a Practice TestFor companies
Screen real C skills, flag human or AI assistance, and interview the right people.
About the test
The C online test assesses knowledge of programming in the C language through a series of live coding questions.
The assessment includes work-sample tasks such as:
- Using pointers to reference a location in memory.
- Implementing and properly using data structures and algorithms.
- Optimizing memory management and fixing memory leaks.
A good C developer needs a solid understanding of the C programming language and the implications of low-level optimizations to work on complex or performance critical code.
Sample public questions
A megastore offers three types of discounts, which are represented as DiscountType enum.
Implement the get_discounted_price method which should take the total weight of the shopping cart, the total price, and the discount type. It should return the final discounted price based on the discount schemes as shown in the promotional video below:
(Open full-size video in a new tab)
For example, the following code:
printf("%.2f", get_discounted_price(12, 100, WEIGHT));should print:
82.00A turn-based strategy game has a grid with water and land. The grid contains a true value where it's water and false where it's land.
The player controls a boat unit with a particular movement pattern. It can only move to fixed destinations from its current position as shown in the video below:
The boat can only move in a direct path through water to the possible destinations, so a destination will become unreachable if there is land in the way.
Implement the can_travel_to function, that checks whether a destination is reachable by the boat. It should return true for destinations that are reachable according to the pattern above, and false for unreachable or out of bounds destinations which are outside the grid.
For example, consider the following code:
bool game_matrix[6][6] = {
{false, true, true, false, false, false},
{true, true, true, false, false, false},
{true, true, true, true, true, true},
{false, true, true, false, true, true},
{false, true, true, true, false, true},
{false, false, false, false, false, false},
};
printf("%d\n", can_travel_to((bool*) game_matrix, 6, 6, 3, 2, 2, 2)); // true, Valid move
printf("%d\n", can_travel_to((bool*) game_matrix, 6, 6, 3, 2, 3, 4)); // false, Can't travel through land
printf("%d\n", can_travel_to((bool*) game_matrix, 6, 6, 3, 2, 6, 2)); // false, Out of boundsThe following image shows valid and invalid destinations when the boat is in the position (3, 2):

For jobseekers: get certified
Earn a free certificate by achieving top 25% on the C test with public questions.
Take a Certification TestSample silver certificate
Sunshine Caprio
Java and SQL TestDomeCertificate
For companies: premium questions
Buy TestDome to access premium questions that can't be practiced.
Ready to interview?
Use these and other questions from our library with our
Code Interview Platform.

38 more premium C questions
Square, Descriptor, Copy Bit, Max Sum, Init Range, Increment, Internal Nodes, Battery, Allocate String, Count Letters, Segment, Read Write Execute, Run in Parallel, Tiles, Weighted Average, Racer, Vectors, Node, Calories Burned, Strings Pointer, Paper Strip, Shipping, Sort Params, Automated Forklift, Flimsy Bridge, Planet Search, Ecological Experiment, Circuit Simulator, Airport Networks, Seasonal Tourism, Chain Link, Fraud Detection, Weather Station, Newest User, Parking Allocation, Company Stock, Digital Flasks, Jobs Time.
Skills and topics tested
- C
- Pointers
- Memory Management
- Bit Manipulation
- Algorithmic Thinking
- Arrays
- Tree
- Language
- Pointer to Pointer
- Strings
- Arithmetic
- Higher Order Function
- Multithreading
- Pthreads
- 2D Array
- Pass by Reference
- Bug Fixing
- Synchronization
- Iteration
- Recursion
- Video
- Conditions
- Graphs
- Linked List
- Error Handling
- AI Code Review
- Conditional Statements
- Loops
- Sorting
For job roles
- Back-End Developer
- C Developer
Sample candidate report
Need it fast? AI-crafted tests for your job role
TestDome generates custom tests tailored to the specific skills you need for your job role.
Sign up now to try it out and see how AI can streamline your hiring process!
What others say
Simple, straight-forward technical testing
TestDome is simple, provides a reasonable (though not extensive) battery of tests to choose from, and doesn't take the candidate an inordinate amount of time. It also simulates working pressure with the time limits.
Jan Opperman, Grindrod Bank
Product reviews
Used by
Solve all your skill testing needs
150+ Pre-made tests
130+ skills
AI-ready assessments
How TestDome works
Choose a pre-made test
or create a custom test
Invite candidates via
email, URL, or your ATS
Candidates take
a test remotely
Sort candidates and
get individual reports




