Embedded Systems and 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
Test candidates with real-world problems and interview the best ones.
Sign Up to Offer this TestAbout the test
The Embedded Systems and C online test assesses knowledge of embedded systems and the C programming language. This test includes solving live coding problems in C.
The assessment includes solving work-sample tasks, such as:
- Understanding how a call stack works in C.
- Filling the truth table for a digital system made of logic gates.
- Using semaphores and mutex to coordinate access to resources.
A good embedded systems/software engineer needs to have knowledge of hardware used for embedded systems and devices, and should know how to develop software required to run the system using the C programming language.
Sample public questions
A gaming company is working on a platformer game. They need a method that will compute the character's final speed, given a map and a starting speed.
The terrain on which the game character moves forward is made from various pieces of land placed together. Implement the method calculate_final_speed which takes the initial speed of the character, and an array of degrees of inclination that represent the uneven terrain.
The speed of the character will increase or decrease proportionally to the incline of the land, as shown in the image below:
The magnitude of the angle of inclination will always be < 90°. The speed change occurs only once for each piece of land. The method should immediately return 0 as the final speed if an incline reduces the speed to 0 or below 0, which makes the character lose 1 life.
For example, the below code:
int inclinations[] = { 0, 30, 0, -45, 0 };
int array_length = sizeof(inclinations) / sizeof(inclinations[0]);
printf("%.2f\n", calculate_final_speed(60, inclinations, array_length));
should print:
75.00
You have a component which should be used as part of a signal processing device. It has four input pins, one output pin, and three slots where you can insert logical gates:
The component should have the following truth table:
In | Out | |||
---|---|---|---|---|
A | B | C | D | E |
0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 1 | 0 |
0 | 0 | 1 | 0 | 0 |
0 | 0 | 1 | 1 | 0 |
0 | 1 | 0 | 0 | 0 |
0 | 1 | 0 | 1 | 1 |
0 | 1 | 1 | 0 | 1 |
0 | 1 | 1 | 1 | 0 |
1 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 1 | 1 |
1 | 0 | 1 | 0 | 1 |
1 | 0 | 1 | 1 | 0 |
1 | 1 | 0 | 0 | 0 |
1 | 1 | 0 | 1 | 0 |
1 | 1 | 1 | 0 | 0 |
1 | 1 | 1 | 1 | 0 |
Choose appropriate logic gates for the component's slots to achieve the required truth table.
1st slot: __ gate
2nd slot: __ gate
3rd slot: __ gate
For jobseekers: get certified
Earn a free certificate by achieving top 25% on the Embedded Systems and 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.
Get money back if you find any premium question answered online.
Ready to Interview?
Use these and other questions from our library with our
Code Interview Platform.
39 more premium Embedded Systems and C questions
Square, Descriptor, Copy Bit, Max Sum, Init Range, Increment, Internal Nodes, Battery, Allocate String, Count Letters, Segment, Smart Home, Water Level Sensor, USB, Read Write Execute, Sort Params, Run in Parallel, Tiles, Weighted Average, Racer, Chain Link, Vectors, Node, Digital Flasks, Airport Networks, Calories Burned, Strings Pointer, Storing Data, Peripheral Device, Shipping, Paper Strip, Flimsy Bridge, Parking Allocation, Company Stock, Circuit Simulator, Seasonal Tourism, Ecological Experiment, Jobs Time, Planet Search.
Skills and topics tested
- C
- Pointers
- Memory Management
- Bit Manipulation
- Algorithmic Thinking
- Arrays
- Tree
- Language
- Pointer to Pointer
- Strings
- Arithmetic
- Embedded Systems
- IoT
- Wireless Connection
- Stack Memory Allocation
- Computer Bus
- Wired Connection
- Pass by Reference
- Higher Order Function
- Multithreading
- Pthreads
- 2D Array
- Bug Fixing
- Synchronization
- Linked List
- Iteration
- Recursion
- Graphs
- Endianness
- Number System Conversion
- Boolean Function
- Logic Gates
- Video
- AI Code Review
- Conditional Statements
- Loops
- Conditions
- Sorting
For job roles
- Back-End Developer
- C Developer
- Embedded Software Engineer
- Embedded Systems Engineer
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
From web development and database administration to project management and customer support. See all pre-made tests.
130+ skills
From JavaScript and SQL to English and customer support. See all questions to filter by skill.
Multi-skills Test
Mix questions for different skills or even custom questions in one test. See an example.
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