15 extra multiple-choice questions for Control Structures (12th Standard Computer Science, Samacheer Kalvi), beyond the ones printed in the textbook — each with the correct option highlighted and a clear, worked explanation. Free to read in English and Tamil.
Q1
Which of the following statements is executed sequentially, one after another, in the order they are written?
- A. Alternative statement
- B. Branching statement
- C. Sequential statementCorrect
- D. Iterative statement
Explanation. Sequential statements are executed line-by-line in a direct order. This represents the default flow of control in a Python program unless altered by conditional or loop structures.
Q2
What will be the value of x after the execution of the following statement: x = 10 if 5 > 8 else 20?
- A. 10
- B. 20Correct
- C. True
- D. False
Explanation. This represents Python's inline conditional expression. Since the condition 5 > 8 evaluates to False, the statement assigns the expression after the else keyword, which is 20, to the variable x.
Q3
In an if..elif..else statement, where must the optional else clause be placed if it is used?
- A. At the very beginning before if
- B. Immediately after the if clause
- C. At the end of the entire statement structureCorrect
- D. It can be placed at any position inside the structure
Explanation. In an if-elif-else construct, the else block provides the default path when all preceding conditions evaluate to False. Thus, it must always be placed at the very end of the statement block.
Q4
Which loop in Python is categorised as an entry check loop, meaning its condition is tested before executing the loop body?
- A. while loopCorrect
- B. do..while loop
- C. repeat..until loop
- D. exit loop
Explanation. The while loop in Python is an entry check loop. The test condition is checked first; if it evaluates to False initially, the loop body is never executed.
Q5
What is the default starting value of the range generated by the range(stop) function in Python if only one parameter is specified?
- A. 1
- B. -1
- C. 0Correct
- D. None of the above
Explanation. When the range() function is called with a single argument, that argument is treated as the exclusive upper limit. The starting value defaults to 0.
Q6
What sequence of values will be generated by the expression range(2, 10, 3)?
- A. 2, 5, 8Correct
- B. 2, 5, 8, 10
- C. 2, 3, 4, 5, 6, 7, 8, 9, 10
- D. 5, 8
Explanation. The range function starts generating values at 2 and increments by the step value of 3. It stops before reaching the upper limit of 10, producing the sequence 2, 5, and 8.
Q7
What is the output of the following Python loop?
for i in range(1, 5):
if i == 3:
break
print(i, end=' ')
else:
print('End')
- A. 1 2 End
- B. 1 2 3
- C. 1 2Correct
- D. 1 2 4 End
Explanation. The break statement terminates the loop prematurely when i equals 3. Because the loop was left by a break statement, the else block associated with the for loop is completely skipped.
Q8
Which parameter of Python's print() function can be used to define custom separation characters between multiple items being printed?
- A. end
- B. sepCorrect
- C. split
- D. limit
Explanation. The sep parameter in Python's print() function defines the separator between different items. By default, it is a space, but it can be changed to any string.
Q9
What is the primary purpose of the pass statement in Python?
- A. To terminate the execution of the current loop immediately
- B. To skip the current iteration and jump to the next one
- C. To act as a null statement or placeholder for future code implementationCorrect
- D. To check if a specific condition is successfully met
Explanation. The pass statement is a null statement in Python. It is completely ignored by the interpreter during execution and acts as a structural placeholder where syntax requires a statement.
Q10
What will be printed on the screen when the following code block is executed?
x = 'Python'
for char in x:
if char == 't' or char == 'o':
continue
print(char, end='')
- A. PyhnCorrect
- B. Python
- C. Py
- D. thon
Explanation. The continue statement immediately skips the remaining code of the current iteration. When the loop encounters 't' and 'o', printing is bypassed, resulting in the output 'Pyhn'.
Q11
Which of the following is correct regarding nested loops in Python?
- A. Only for loops can be nested inside other for loops.
- B. Only while loops can be nested inside other while loops.
- C. Any loop (for or while) can be nested inside any other loop.Correct
- D. Python does not support nesting of loops.
Explanation. Python permits any loop type to be placed inside another. A programmer can nest a while loop inside another while loop, a for inside a for, or mix both types freely.
Q12
What happens when the condition of a while loop is initially evaluated as False?
- A. The loop executes exactly once and then terminates.
- B. The loop runs continuously as an infinite loop.
- C. The interpreter throws a runtime compilation error.
- D. The loop body is not executed even once, and control jumps to the next statement.Correct
Explanation. Because Python's while loop is an entry check loop, the loop condition is verified before entering the loop. If the condition is False at the start, the loop body is completely skipped.
Q13
Which statement is used to unconditionally transfer the control from one part of the program to another?
- A. Sequencing statement
- B. Jump statementCorrect
- C. Alternative statement
- D. Structural statement
Explanation. Jump statements like break, continue, and pass transfer control unconditionally. They allow programmers to alter the loop behavior or act as program flow placeholders.
Q14
What will be the output of the following Python code snippet?
a = 15
if a % 3 == 0:
if a % 5 == 0:
print('Divisible by both')
else:
print('Divisible by 3 only')
else:
print('Not divisible by 3')
- A. Divisible by 3 only
- B. Divisible by bothCorrect
- C. Not divisible by 3
- D. No output is printed
Explanation. The value 15 is divisible by 3, so the nested loop block is evaluated. Since 15 is also divisible by 5, the condition under the nested if is True, printing 'Divisible by both'.
Q15
Which keyword can be used to test if a character exists in a tuple of specified vowel characters inside an if statement?
- A. inCorrect
- B. check
- C. match
- D. with
Explanation. The in keyword is Python's membership operator. It is used to determine whether a particular value is an element of a sequence, such as checking for vowels in a tuple.