Examveda
Examveda

What will be the output given program?
#include<stdio.h>
void main()
{
	int i = -10;
	for(;i;printf("%d ", i++));
}

A. -10 to -1

B. -10 to infinite

C. -10 to 0

D. Complier error

Answer: Option A

Solution(By Examveda Team)

for loop can be initialized outside of the loop. Since until -1 value of i remain a non-zero value and hence the condition is true up to -1. But when i is further increases its value becomes 0 and condition becomes false and loop stops there.

Note:In C any non-zero value(positive or negative) evaluates to true and only zero value is evaluates to false.


This Question Belongs to C Program >> Control Structures

Join The Discussion

Comments ( 2 )

  1. Daniyal Ansari
    Daniyal Ansari :
    4 years ago

    Miss. Anjali Saroha you are wrong because it will execute and gives output
    -10-9-8-7-6-5-4-3-2-1

  2. Anjali Saroha
    Anjali Saroha :
    6 years ago

    but in this the for loop have ; at the closing
    it will create compiler error

Related Questions on Control Structures