Pages

Sunday, August 24, 2025

Viva questions based on C Decision Making statements with Answers

Viva Questions on C Decision Making Statements with Answers

(if, if-else, nested if, switch, conditional operator)

1. What is a decision-making statement in C?

Answer:

A decision-making statement allows the program to take different actions based on conditions. Examples are if, if-else, nested if, switch, and the conditional (ternary) operator ?:.

2. What is the difference between if and if-else statements?

Answer:

if executes a block of code only if the condition is true.
if-else provides an alternative block of code to execute when the condition is false.

3. Can we use multiple if-else statements in C?

Answer:

Yes, we can use multiple if-else if constructs, also known as ladder if-else, to check multiple conditions sequentially.

4. What is a nested if statement?

Answer:

A nested if means writing an if statement inside another if or else block. It is useful when multiple levels of decision-making are required.

5. How does a switch statement work in C?

Answer:

A switch evaluates an expression and compares it with multiple case labels. When a match is found, the corresponding block is executed until a break statement is encountered.

6. What happens if we don’t use break in a switch case?

Answer:

Without break, the program executes the matched case and then continues executing subsequent cases (fall-through) until it encounters a break or the end of the switch block.

7. Can a switch statement work with floating-point values?

Answer:

No, in C, a switch statement works only with integer and character values, not with float or double.

8. What is the difference between if-else and switch?

Answer:

if-else can handle complex conditions (logical expressions, ranges, multiple conditions).
switch is limited to checking equality of a single expression against constant values but is often faster and more readable.

9. What is the conditional (ternary) operator in C?

Answer:

The conditional operator ?: is a shorthand for if-else.

Example:

int max = (a > b) ? a : b;

This assigns a to max if a > b, otherwise assigns b.

10. Is it possible to use a switch inside another switch?

Answer:

Yes, we can have nested switch statements, but it is not commonly used because it reduces readability.

11. What is the difference between = and == in decision-making?

Answer:

= is the assignment operator (assigns value).
== is the equality operator (compares two values).
Using = instead of == inside conditions is a common error.

12. Can if statements be written without curly braces {}?

Answer:

Yes, if there is only one statement inside the if or else block, curly braces are optional. But for multiple statements, curly braces are required.


 < Back to Question Bank >

 

Saturday, August 23, 2025

C Programming Viva Questions on Loops with Model Answers

Viva Questions on Loops with Answers


1. What is a loop in C programming? Why do we use it?

Answer:
A loop is a control structure in C that repeatedly executes a block of code until a specified condition is true. We use loops to avoid writing repetitive code and to perform iterative tasks efficiently.

2. Explain the difference between while, do…while, and for loops in C.

Answer:
  • while loop: Condition is checked first, then the body executes. (Entry-controlled loop)
  • do…while loop: Body executes first, then condition is checked. (Exit-controlled loop, runs at least once)
  • for loop: Used when initialization, condition, and increment/decrement are all in one line. Best for fixed iterations.
3. What happens if the loop condition is never satisfied in a while loop?

Answer:

If the condition is false at the beginning, the while loop body will never execute even once.

4. Can a for loop run infinitely? Give an example.

Answer:

Yes. If the loop condition is always true or missing, the loop runs infinitely.

Example:

for(;;) {
   printf("Infinite loop\n");
}

5. What is the difference between break and continue statements inside loops?

Answer:

•   break: Immediately exits the loop and transfers control outside.
•   continue: Skips the current iteration and jumps to the next iteration of the loop.

6. What is an infinite loop? Write a simple example in C.

Answer:

An infinite loop is a loop that never terminates because the condition always remains true.

Example:

while(1) {
   printf("Hello\n");
}

7. How is the initialization, condition, and increment part of a for loop optional? Give an example.

Answer:

All three parts in a for loop are optional. If omitted, they must be handled inside the loop body.

Example:

int i = 1;
for(; ; ) {
   if(i > 5) break;
   printf("%d ", i);
   i++;
}

8. What is the output of the following code?

int i = 1;
while(i <= 5){
    printf("%d ", i);
    i++;
}
Answer:
Output:
1 2 3 4 5

9. Write a C program to print numbers from 1 to 10 using a do…while loop.

Answer:

#include <stdio.h>
int main() {
    int i = 1;
    do {
        printf("%d ", i);
        i++;
    } while(i <= 10);
    return 0;
}

10. Explain nested loops with an example (e.g., printing a multiplication table).

Answer:

A nested loop is a loop inside another loop.
  
Example of Multiplication table:

for(int i = 1; i <= 3; i++) {
    for(int j = 1; j <= 3; j++) {
        printf("%d ", i * j);
    }
    printf("\n");
}
Output:
1 2 3  
2 4 6  
3 6 9

 < Back to Question Bank >