The ones who are crazy enough to think they can change the world are the ones who do.
- Steve Jobs

C for loop Tricky Interview Questions and Answers

In most of the MNC interview questions such as in ZOHO interview question, IVTL Infoview interview questions, Amazon interview questions, GOOGLE interview questions, Infosys interview questions and even in Voonik interview questions, We come across several Tricky C Questions about which 2:5 of the questions are from for loop in c. Solving that kind of tricky C questions is not an easy task for all C programmers. We need more practices to solve it with ease. So we provide 25+ interesting C questions in for loop to make your MNC interview very easy.

C for loop Questions

16. What will be the output of the C program?

#include<stdio.h>
int main()
{
	static int i;
	for(i++;++i;i++)
	{
		printf("%d ", i);
		if(i == 6) 
		break;
	}
	return 0;
}

A. 2 4

B. No output

C. 2 4 6

D. Program never ends

x

 

Option: C

Explanation

By Default, the values of static int variable is set to zero by C compiler. i.e) i = 0;
Clearly, the for loop in this program is infinite for loop, ie) At first iteration the program looks like for( 0;2;2 ) that is it 2 4 6 8 10 .. and so on. By this program we breaks when i = 6.

Answer


17. What will be the output of the C program, if input is 6?

#include<stdio.h>
int fun();
int main(){
	for(fun();fun();fun()) 
	{
	printf("%d ", fun());	
	}
	return 0;
}
int fun()
{
    int static num = 10;
    return num--;
}

A. 8 5 2

B. 7 4 1

C. 6 3 0

D. None of the above

x

 

Option: A

Explanation

Clearly for(fun();fun();fun())

At First Execution

for(10;9;fun()) //condition is true
printf("%d", 8); //8 prints

At Second Execution

for(10;fun();7)
for(7;6;fun())
printf("%d", 5); //5 prints

At Third Execution

for(7;fun();4)
for(4;3;fun())
printf("%d", 2); //2 prints

At fourth Execution

for(4;fun();1)
for(1;0;fun())//condition fails and program terminated
Thus outputted 8 5 2

Answer


18. What will be the output of the C program by considering 'b' as a User input?

#include<stdio.h>
int main()
{
	for(;;) 
	{
		printf("%d ", 10);
	}
	return 0;
}

A. Compilation error

B. 10

C. Program never ends

D. None of the above

x

 

Option: C

Explanation

Yes, it is infinite for loop.

Answer


19. What will be the output of the C program?

#include<stdio.h>
int main()
{
	int fun = {
	printf("C for loop ")
	};
	int x = 5;
	for(x=0;x<=fun;x++)
	{
	printf("%x ", x);
	}
	return 0;
}

A. 0 1 2 3 4 5 6 7 8 9

B. C for loop0 1 2 3 4 5 6 7 8 9 a

C. 0 1 2 3 4 5 6 7 8 9 a

D. None of the above

x

 

Option: B

Explanation

for loop executes first.
for(x=0;x<=fun;x++)
ie) for(x=0; x=printf("C for loop"); x++)
Now printf in conditional place of for loop prints C for loop and the count in that string is replace in conditional place of for loop
ie) for(x=0; x<=10;x++)
thus outputted C for loop 0 1 2 3 4 5 6 7 8 9 a
here a represent 10 in hexadecimal.

Answer


20. What will be the output of the C program?

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

A. Compilation error

B. 1 2 3

C. 4

D. 0 1 2 3

x

 

Option: C

Explanation

Although for loop terminated within itself, it iterates for 4 times and 4 alone is outputted.

Answer


Report Us

We may make mistakes(spelling, program bug, typing mistake and etc.), So we have this container to collect mistakes. We highly respect your findings.

Report