C# and .NET tricky questions

    I have collected some most interesting and not well-known questions from the web. And also based on interesting books, articles and videos I have seen, I have wrote some of questions myself.
    I want propose you to guess right answer.

    1. What would be displayed? (if something would be displayed at all)

    string nullString = (string)null;
    Console.WriteLine (nullString is string);

    False, because Null doesn’t have type in runtime
    Credits: https://www.dotnetcurry.com/csharp/1417/csharp-common-mistakes

    2. What would be displayed on the screen in .NET console application?

    Console.WriteLine (Math.Round(1.5));
    Console.WriteLine (Math.Round(2.5));

    2 and 2. Because by default rounding to the nearest even number is known as Bankers' Rounding. Surprisingly in Mono result would be 2 and 3.

    3. What would be the result of

    static void Main(string[] args)
        float f = Sum(0.1f, 0.2f);
        float g = Sum(0.1f, 0.2f);
        Console.WriteLine(f == g);
    static float Sum(float f1, float f2)
        return f1 + f2;

    a) True
    b) False
    c) Exception would be thrown
    d) That depend (could be either true or false)

    When running normally, the JIT can store the result of the sum more accurately than a float can really represent — it can use the default x86 80-bit representation, for instance, for the sum itself, the return value, and the local variable.
    Binary floating point and .NET

    4. What would be the result of

    float price = 4.99F;
    int quantity = 17;
    float total = price * quantity;
    Console.WriteLine("The total price is ${0}.", total);

    a) The total price is $85
    b) The total price is $84.83
    c) The total price is $84
    d) The total price is $84.82999

    5. What is the right way to store passwords in database? Choose one or multiple correct answers

    a) In plain text
    b) Encrypted with DES
    c) Encrypted with AES
    d) Hashed with MD5
    e) Hashed with SHA512

    Don’t use MD5 anymore
    By the way it is also possible to use keyed hashing algorithms: HMACSHA1 or MACTripleDES

    6. In between different .NET technologies there is a lot of timers. Which one timer does not exist?

    a) Timer from System.Windows.Forms
    b) DispatchTimer from System.Windows.Threading
    c) DispatchTimer from Windows.UI.XAML
    d) Timer from System.Timers
    e) Timer from System.Windows.Threading.Timers
    f) Timer from System.Threading

    Credits: CLR via C# Jeffrey Richter

    7. Which one .NET REPL does not exists?

    a) dotnetfiddle.net
    b) repl.it/languages/csharp
    c) csharpcompiler.net
    d) dotnet.microsoft.com/platform/try-dotnet
    e) csharppad.com


    8. If you want to set a type long for a number in C# you can add at the end letter L or l. For example:

    var l = 138l;

    With which letter it is possible to mark a decimal type?

    a) C or c
    b) D or d
    c) M or m
    d) E or e


    9. What will display on the screen console application that will contain next code:

         class Program
             static Program()
                Console.WriteLine("Static constructor");
             public Program()
            static void Main(string[] args)

    «Static constructor» and «Main»
    As you might know, static constructor is called automatically before the first instance is created or any static members are referenced. And only then public constructor is called. But in this case, we are in console application and public constructor doesn’t called.

    10. What would be displayed as result?

          public enum Status 
             Funny = 0x01,
             Hilarious = 0x02,
             Boring = 0x04,
             Cool = 0x08,
             Interesting = 0x10,
             Informative = 0x20,
             Error = 0x40
      public static void Main (string[] args) {
             var code = 24;
             Console.WriteLine (String.Format("This Quiz is: {0}",  (Status)code));

    This Quiz is: Cool Interesting

    24 that would be 0011000 in binary system
    Writing numbers in column
    Funny = 0
    Hilarious = 0
    Boring = 0
    Cool = 1
    Interesting = 1
    Informative = 0
    Error = 0
    C# Often Surprises Me, part: 000001
    Enumeration types (C# reference)

    11. Where is a difference between String and string?

    String is .NET alias for c# string. Similar like short and int in C# are mapped to Int16 and Int32 in .NET
    Use next link to get more details Difference between string and String in C#

    12. What does mean (or at least has meant initially) Visual Studio sign?

    Intersection of Intranet and Internet worlds.
    Credits: That Visual Studio logo--it's not what you think it is

    13. Please match:
    with abbreviations:

    Async/await -> TAP (Task asynchronous programming model)
    Try/catch -> SEH (Structured Exception Handling)
    ValidateAntiForgeryToken -> STP (Synchronizer Token Pattern)

    14. Which one is not .NET CMS?

    a) mojoPortal
    b) N2 CMS
    c) Atomic CMS
    d) Composite C1
    e) Concrete5
    f) Piranha CMS


    15. What would be displayed on the screen?

         class Program
            private static int y = x;
            private static int x = 5;
            static void Main(string[] args)

    Sometimes declaring variables order plays a role.

    16. Which Concurrent Collection class is missing in .Net

    a) ConcurrentQueue
    b) ConcurrentStack
    c) ConcurrentList
    d) ConcurrentDictionary
    e) ConcurrentBag


    17. What is the preferable way to run async code synchronously (if it’s not possible to use await):

    a) Wait()
    b) Result()
    c) GetAwaiter().GetResult()

    Wait and Result are throwing aggregate exception instead of normal
    Credits: Correcting Common Async/Await Mistakes in .NET — Brandon Minnick

    Средняя зарплата в IT

    111 000 ₽/мес.
    Средняя зарплата по всем IT-специализациям на основании 7 268 анкет, за 2-ое пол. 2020 года Узнать свою зарплату
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут


    Комментарии 3

      All these questions look like they are from job interviews. You said that you wrote some of the questions yourself. Does it mean you are an HR manager?
        Hi ShaltaiBoltai,
        No, I am not HR. I am developer. I haven't ever seen HR manager who understands programming.
        I haven't ever seen HR manager who understands programming.

        :D But in the end HR managers are those who decide if a person is worthy to work in their company.

        Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

        Самое читаемое