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 C# online test assesses knowledge of programming in the C# language through a series of live coding problems.
The assessment includes work-sample tasks such as:
- Working with classes, objects, and interfaces to write reusable code.
- Implementing and properly using algorithms and data structures to optimize application performance.
- Using components provided by the .NET framework class library.
A good C# developer needs a solid understanding of the C# programming language as well as the .NET framework class library and its functionality to write robust and maintainable code.
Sample public questions
A 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 image 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 CanTravelTo 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[,] gameMatrix =
{
{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},
};
Console.WriteLine(CanTravelTo(gameMatrix, 3, 2, 2, 2)); // true, Valid move
Console.WriteLine(CanTravelTo(gameMatrix, 3, 2, 3, 4)); // false, Can't travel through land
Console.WriteLine(CanTravelTo(gameMatrix, 3, 2, 6, 2)); // false, Out of bounds
The following image shows valid and invalid destinations when the boat is in the position (3, 2):
Your company is analyzing malware which targets numerical record files.
The malware uses a sliding window over the array of numbers in a file, and tries to match the following pattern:
Tl, -, -, X, -, -, -, Tr
The entire window is moved so that 'X' passes through all the values and is compared to the numbers at the 'Tl' and 'Tr' locations, which are positioned at a constant offset to 'X'.
The malware has the following rules:
- If the value at the 'Tl' or 'Tr' position of the pattern is bigger or equal to the value at the 'X’ position, the malware replaces the value at 'X' with 0.
- If the value at the 'Tl' or 'Tr' offset is out of bounds, then the value at 'X' is only compared to the other existing value.
- The record is processed in two stages: first, all the positions that should be set to 0 are located, using the original values for comparison. Only after all positions have been identified do they get set to 0.
For example, if the values in a record file are the following:
new int[] { 1, 2, 0, 5, 0, 2, 4, 3, 3, 3 }
The expected values after the malware runs are:
new int[] { 1, 0, 0, 5, 0, 0, 0, 3, 3, 0 }
In this example, both '2's, the '4' and the last '3' were replaced by 0.
Implement the Simulate method so that the malware behavior is replicated for further study.
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.
Get money back if you find any premium question answered online.
68 more premium C# questions
Max Sum, Product Refactoring, Sort Params, Racer, Read First Line, Prefix, Chinese Box, Car Rental, Eye of the Storm, Document Store, Snapshot, Moving Total, Driver Exam, Classroom, Username, Weighted Average, Kilometer Converter, Document Counter, Disposable Wrapper, Platformer, String Occurrence, Hobbies, Language Teacher, Read Write Execute, Node, Friend, Internal Nodes, Crop Ratio, Unique Numbers, Wheel Defects, Log Parser, Shelf Test, Chain Link, Worker, Veterinarian, Window Manager, Ceramic Store, Stories, Paper Strip, Segment, Flight Connections, Nullable Employee, Vectors, Date Transform, Book Sale, Construction Game, XML Navigation, Shipping, Planet Search, Company Stock, Digital Flasks, Airport Networks, Patient Class, Patient Class, Unique Product, Ingredient Tuple, Stack to List, Log Patch, Circuit Simulator, Fire Dragon, Shining Star, Chemical Machine, Bicycle, Flimsy Ladder, Paragraph, Animal Hierarchy, Procedural Generator, Calories Burned.
Skills and topics tested
- C#
- Algorithmic Thinking
- Accessibility Levels
- OOP
- Refactoring
- Pass by Reference
- Multithreading
- Synchronization
- Exceptions
- LINQ
- Data Structures
- Sorting
- Bug Fixing
- Language
- Lists
- HashSet
- Properties
- Regex
- Strings
- Arithmetic
- Inheritance
- Method Overriding
- Destructors
- Memory Management
- Linked List
- Stream
- Dictionary
- Iteration
- Recursion
- Tree
- Graphs
- Arrays
- Integer Division
- StringBuilder
- Serialization
- XML
- Test Case Design
- Unit Testing
- Queue
- Dynamic Programming
- Null Coalescing Operator
- Null Conditional Operator
- Dynamic Objects
- Conditions
- AI Code Review
- Conditional Statements
- Loops
- 2D Array
- Abstract Class
- Tuples
- Complexity
- Stack
- Extension Methods
- Higher Order Function
- Interfaces
- TDD
- Field Modifiers
- Random
For job roles
- .NET Developer
- Back-End Developer
- C# Developer
- Web Developer
Sample candidate report
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.
90+ 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