C# Questions & Answers on IF Statements for Freshers

https://www.computersprofessor.com/2018/06/c-questions-answers-on-if-statements.html
1. Select the output for the following set of code :
static void Main(string[] args)
{
int i = 30;
int j = 25 % 25;
if (Convert.ToBoolean(Convert.ToInt32(i = j)))
{
Console.WriteLine("In if");
}
else
{
Console.WriteLine("In else");
}
Console.WriteLine("In main");
Console.ReadLine();
}
a) In if
b) In else
c) In if
In main
d) In else
In main
b) In else
c) In if
In main
d) In else
In main
Answer: d
Explanation: Usage of ‘=’ operator instead of ‘==’ operator .hence,the condition is not true.
Output: In else
In main
2. Select output for the following set of Code:
static void Main(string[] args)
{
int i;
int b = 8, a = 32;
for (i = 0; i <= 10; i++)
{
if ((a / b * 2)== 2)
{
Console.WriteLine( i + " ");
continue;
}
else if (i != 4)
Console.Write(i + " ");
else
break;
}
Console.ReadLine();
}
a) 1 2 3 4 5 6 7 8 9
b) 0 1 2 3 4 5 6 7 8
c) 0 1 2 3
d) 0 1 2 3 4
b) 0 1 2 3 4 5 6 7 8
c) 0 1 2 3
d) 0 1 2 3 4
Answer: c
Explanation: The if condition will never be fulfilled as ((a / b) * 2 == 2) is never true.Hence,only else part of condition will be executed until i! = 4 i.e i = 0,1 ,2 ,3.
Output:0 1 2 3
3. Select the output for the following set of Code:
static void Main(string[] args)
{
Console.WriteLine("Enter a letter:");
char c = (char)Console.Read();
if (Char.IsDigit(c) == true)
Console.WriteLine("A number");
else if (char.IsLower(c) == true)
Console.WriteLine("A lower case letter");
else if (char.IsUpper(c) == true)
Console.WriteLine("An upper case letter");
Console.ReadLine();
}
1. Enter a letter :
a
An upper case letter
2. Enter a letter :
A
An upper case letter
3. Enter a letter :
2
A number
4. Enter a letter :
2
A lower case letter.
Which of the following conditions are true ?
a) a ,b ,c
b) b ,c ,d
c) a ,d ,b
d) b ,c
a) a ,b ,c
b) b ,c ,d
c) a ,d ,b
d) b ,c
Answer: d
Output:Enter a letter :
A
An upper case letter
Enter a letter :
2
A number
4. Select the output for the following set of code :
static void Main(string[] args)
{
int i, j;
for (i = 2; i >= 0; i--)
{
for (j = 0; j <= 2; j++)
{
if (i == j)
{
Console.WriteLine("1");
}
else
{
Console.WriteLine("0");
}
}
Console.WriteLine("\n");
Console.ReadLine();
}
}
a) 1 0 0
0 1 0
0 0 1
b) 0 1 0
1 0 0
0 0 1
c) 0 0 1
0 1 0
1 0 0
d) 1 0 0
0 0 1
0 1 0
0 1 0
0 0 1
b) 0 1 0
1 0 0
0 0 1
c) 0 0 1
0 1 0
1 0 0
d) 1 0 0
0 0 1
0 1 0
Answer: c
Explanation: In first row for i = 2 : j = 0 == 0 as if condition fails for (i == j)
i = 2 : j = 1 == 0 as again if condition fails for ( i == j)
i = 2 : j = 2 == 1 as (i == j).
In Second row for i = 1 : j = 0 == 0 as if condition fails for (i == j)
i = 1 : j = 1 == 1 (as i==j)
i = 1 : j = 2 == 0 as (i==j) not true
In Third row for i = 0 : j = 0 == 1 as (i==j) true
i = 0 : j = 1 == 0 as (i==j) not true.
i = 0 : j = 2 == 0 .
So, 0 0 1
0 1 0
1 0 0
Output: 0 0 1
0 1 0
1 0 0
0 1 0
1 0 0
5. Select the correct ‘if statement’ to be filled in the given set of code :
static void Main(string[] args)
{
int []num = {50, 65, 56, 88, 43, 52};
int even = 0, odd = 0;
for (int i = 0 ;i < num.Length ;i++)
{
/*___________________________*/
}
Console.WriteLine("Even Numbers:" +even);
Console.WriteLine("Odd Numbers:" +odd);
Console.ReadLine();
}
a)
if ((num % 2) == 0)
{
even += 1;
}
else
{
odd += 1;
}
b)
if((num * i) == 0)
{
even += 1;
}
else
{
odd += 1;
}
c)
if(num[i] % 2 == 0)
{
even += 1;
}
else
{
odd += 1;
}
d)
if(num[i] % 2 = 0)
{
even += 1;
}
else
{
odd += 1;
}
Answer: c
Explanation: int []num = {50, 65, 56, 88, 43, 52};
int even = 0,odd = 0;
for (int i = 0 ;i < num.Length ;i++)
{
if (num[i] % 2 == 0)
{
even += 1;
}
else
{
odd += 1;
}
}
Console.WriteLine(“Even Numbers: ” +even);
Console.WriteLine(“Odd Numbers: ” +odd);
Console.ReadLine();
6. What is the output for the following code ?
static void Main(string[] args)
{
int a = 15, b = 10, c = 1;
if (Convert.ToBoolean(a) && (b > c))
{
Console.WriteLine("cquestionbank");
}
else
{
break;
}
}
a) cquestionbank
b) It will print nothing
c) Compile time error
d) Run time error
b) It will print nothing
c) Compile time error
d) Run time error
Answer: c
Explanation: Keyword “break” is not part of if-else statement.This keyword is used in case of loop or switch case statement.
7. What is the output for the following code ?
static void Main(string[] args)
{
int a = 5;
if (Convert.ToBoolean((.002f) -(0.1f)))
Console.WriteLine("Sachin Tendulkar");
else if (a == 5)
Console.WriteLine("Rahul Dravid");
else
Console.WriteLine("Ms Dhoni");
Console.ReadLine();
}
a) Rahul Dravid
b) Sachin Tendulkar
c) Ms Dhoni
d) Warning : Unreachable Code
b) Sachin Tendulkar
c) Ms Dhoni
d) Warning : Unreachable Code
Answer: b
Explanation: (0.002 – 0.1f) not equivalent to zero hence it is true. So,only first if clause will execute and print:Sachin Tendulkar on console.As,first condition is always true so no else if statement will be executed.
Output: Sachin Tendulkar
8. Select the output for the following set of Code :
static void Main(string[] args)
{
int a = -1;
int b = -1;
if (Convert.ToBoolean (++a = ++b))
Console.WriteLine("a");
else
Console.WriteLine("b");
Console.ReadLine();
}
a) a
b) b
c) Compile time error
d) Code execute successfully with no output
b) b
c) Compile time error
d) Code execute successfully with no output
Answer: c
Explanation: Both a and b are constants.Illegal to assign a value to constant on left hand of ‘=’operator .Hence,it must be some variable.
Output: static void Main(string[] args)
{
int a = -1;
int b = -1;
if (Convert.ToBoolean(++a == ++b))
Console.WriteLine(“a”);
else
Console.WriteLine(“b”);
Console.ReadLine();
}
9. Select the output for the following set of Code :
static void Main(string[] args)
{
int a = 5, b = 10;
if (Convert.ToBoolean(Convert.ToInt32(0xB)))
if (Convert.ToBoolean(Convert.ToInt32(022)))
if (Convert.ToBoolean(Convert.ToInt32('\xeb')))
Console.WriteLine("java");
else ;
else ;
else ;
}
a) Compile time error: Misplaced else
b) Compile time error: Undefined symbol
c) java
d) Warning: Condition is always true
b) Compile time error: Undefined symbol
c) java
d) Warning: Condition is always true
Answer: c
Explanation: oxB: hexadecimal integer constant.
022: It octal integer constant.
‘\xeb’: It is hexadecimal character constant.
As,zero is false and any non-zero number is true. All,constants return a non-zero value. So, all if conditions in the above program are true.
Output: java.
10. Select the output for the following set of Code :
static void Main(string[] args)
{
int a = 5, b = 10;
if (Convert.ToBoolean(Convert.ToInt32(++a)) || Convert.ToBoolean(Convert.ToInt32(++b)))
{
Console.WriteLine(a + "\n" + b);
}
else
Console.WriteLine(" C# ");
}
a) 6 11
b) 6 16
c) 6 12
d) 6 10
b) 6 16
c) 6 12
d) 6 10
Answer: d
Explanation: Consider the following expression:( ++a || ++b). In this expression || is ‘Logical OR operator’. Two important properties of this operator are:
Property 1:
(Expression1) || (Expression2)
|| operator returns 0 if and only if both expressions return a zero otherwise || operator returns 1.
initial value of a is 5. So ++a will be 6. Since ++a is returning a non-zero so ++b will not execute.
Output : 6 10.