The int type in C# is a 32-bit signed integer. It ranges from -2,147,483,648 to 2,147,483,647.
Click to reveal answer
beginner
What is the difference between int and uint in C#?
int is a signed 32-bit integer (can hold negative and positive numbers). uint is an unsigned 32-bit integer (only positive numbers and zero). uint ranges from 0 to 4,294,967,295.
Click to reveal answer
intermediate
What is the size and range of the long type in C#?
long is a 64-bit signed integer. It ranges from -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807.
Click to reveal answer
beginner
Which integer type would you use to store only positive numbers up to about 65,000?
You would use ushort, which is an unsigned 16-bit integer ranging from 0 to 65,535.
Click to reveal answer
intermediate
What happens if you try to store a number outside the range of an integer type in C#?
If you store a number outside the range, it causes an overflow. By default, this can wrap around silently or throw an exception if checked context is used.
Click to reveal answer
What is the range of the byte type in C#?
A0 to 65,535
B-128 to 127
C-32,768 to 32,767
D0 to 255
✗ Incorrect
byte is an unsigned 8-bit integer ranging from 0 to 255.
Which type is a 16-bit signed integer in C#?
Ashort
Bushort
Cint
Dlong
✗ Incorrect
short is a 16-bit signed integer ranging from -32,768 to 32,767.
What is the size of the uint type in C#?
A8 bits
B16 bits
C32 bits
D64 bits
✗ Incorrect
uint is a 32-bit unsigned integer.
Which integer type can store the largest positive number?
Along
Bint
Cushort
Dbyte
✗ Incorrect
long is a 64-bit signed integer and can store the largest positive number among these.
What keyword can you use to detect overflow errors in C#?
Aoverflow
Bchecked
Cunchecked
Dsafe
✗ Incorrect
The checked keyword enables overflow checking and throws exceptions on overflow.
Explain the difference between signed and unsigned integer types in C# and give examples.
Think about whether the number can be negative or not.
You got /3 concepts.
List the common integer types in C# and their size in bits.
Remember the smallest to largest sizes.
You got /5 concepts.
Practice
(1/5)
1. Which C# integer type can store values from -128 to 127?
easy
A. int
B. byte
C. short
D. sbyte
Solution
Step 1: Recall the range of sbyte
The sbyte type stores signed 8-bit integers from -128 to 127.
Step 2: Compare with other types
byte stores 0 to 255 (unsigned), short stores -32,768 to 32,767, and int stores much larger values.
Final Answer:
sbyte -> Option D
Quick Check:
Range -128 to 127 = sbyte [OK]
Hint: Remember sbyte is signed 8-bit: -128 to 127 [OK]
Common Mistakes:
Confusing byte (unsigned) with sbyte
Choosing short which has a larger range
Assuming int is smallest
2. Which of the following is the correct way to declare a variable of type uint in C#?
easy
A. uint number = -1;
B. uint number = 4294967295;
C. uint number = 4294967296;
D. uint number = 3.14;
Solution
Step 1: Understand uint range
uint is unsigned 32-bit integer with range 0 to 4,294,967,295.
Step 2: Check each assignment
uint number = -1; assigns -1 (negative) which is invalid. uint number = 4294967295; assigns max valid value 4,294,967,295. uint number = 4294967296; assigns 4,294,967,296 which is too large. uint number = 3.14; assigns a decimal which is invalid for integer type.
Final Answer:
uint number = 4294967295; -> Option B
Quick Check:
uint max = 4294967295 [OK]
Hint: uint stores 0 to 4,294,967,295 only [OK]
Common Mistakes:
Assigning negative values to unsigned types
Using values larger than max range
Assigning decimal numbers to integer types
3. What will be the output of this C# code?
short a = 30000;
short b = 10000;
int c = a + b;
Console.WriteLine(c);
medium
A. 40000
B. -25536
C. OverflowException
D. Compile-time error
Solution
Step 1: Understand variable types and addition
Variables a and b are short (16-bit signed), but addition promotes them to int automatically.
Step 2: Calculate the sum and output
30000 + 10000 = 40000 fits in int range, so c stores 40000 and prints it.
Final Answer:
40000 -> Option A
Quick Check:
30000 + 10000 = 40000 [OK]
Hint: short addition promotes to int, no overflow here [OK]
Common Mistakes:
Expecting overflow because sum exceeds short max
Thinking addition stays in short type
Confusing runtime overflow with compile error
4. Identify the error in this C# code snippet:
byte x = 255;
byte y = 1;
byte z = (byte)(x + y);
Console.WriteLine(z);
medium
A. Output is 0 due to overflow wrap-around
B. Compile-time error due to overflow
C. No error, output is 256
D. Runtime exception thrown
Solution
Step 1: Analyze addition and casting
Addition of x + y is done as int (255 + 1 = 256). Casting to byte truncates to 8 bits.
Step 2: Understand overflow wrap-around
Since byte max is 255, 256 wraps around to 0 due to overflow without exception.
Final Answer:
Output is 0 due to overflow wrap-around -> Option A
Quick Check:
256 mod 256 = 0 [OK]
Hint: Casting int > 255 to byte wraps around [OK]
Common Mistakes:
Expecting output 256 which is invalid for byte
Thinking compile or runtime error occurs
Ignoring overflow wrap-around behavior
5. You need to store the population of a city which can be up to 5 billion. Which C# integer type should you use to avoid overflow?
hard
A. int
B. uint
C. long
D. short
Solution
Step 1: Check the required range
5 billion is 5,000,000,000 which exceeds int max (2,147,483,647) and uint max (4,294,967,295).
Step 2: Choose type with sufficient range
long is a signed 64-bit integer with range ±9 quintillion, enough to store 5 billion safely.
Final Answer:
long -> Option C
Quick Check:
5 billion < long max [OK]
Hint: Use long for numbers bigger than int or uint max [OK]
Common Mistakes:
Choosing int or uint which are too small
Using short which is very small
Not considering signed vs unsigned range
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.