C Programming - Expressions - Discussion

Discussion Forum : Expressions - Find Output of Program (Q.No. 13)
13.
What will be the output of the program?
#include<stdio.h>
int main()
{
    int k, num=30;
    k = (num>5 ? (num <=10 ? 100 : 200): 500);
    printf("%d\n", num);
    return 0;
}
200
30
100
500
Answer: Option
Explanation:

Step 1: int k, num=30; here variable k and num are declared as an integer type and variable num is initialized to '30'.
Step 2: k = (num>5 ? (num <=10 ? 100 : 200): 500); This statement does not affect the output of the program. Because we are going to print the variable num in the next statement. So, we skip this statement.
Step 3: printf("%d\n", num); It prints the value of variable num '30'
Step 3: Hence the output of the program is '30'

Discussion:
27 comments Page 2 of 3.

Purni said:   9 years ago
Could you explain what o/p will be the result of

int x=3, y=4, z=4;

printf("ans=%d",(z>=y>=x?100:200));

Bbbb said:   1 decade ago
i=4;
printf("i=%d,%d,%d,%d",i,++i,i++,--i);
the answer in fedora(linux platform) is 5,5,3,5...hw is it??

Ragni said:   1 decade ago
k = ( num>5 ? (num <=10 ? 100 : 200) : 500);

Will above statement show error message or not?

Krishhnakuamr said:   1 decade ago
Explain if we print k value what will happen in the k = (num>5 ? (num <=10 ? 100 : 200): 500);

Arvi said:   5 years ago
What will be the value of k if num is 20?
k = (num > 50 ? 100: 500);

Please anyone explain me.

Ranjithkumar S said:   9 years ago
Look at the printf statement clearly. They asking the value of num not the value of k.

Tamilmaran c said:   1 decade ago
Its independent to Ternary operator because software expression are differ with this.

Karthik said:   8 years ago
@ALL.

Look at this carefully. They asked only the value of num not the value of k.

Arch said:   1 year ago
if k= 100%1000 print("k=",k) find the value of k.

Anyone, please solve this.

Mad said:   1 decade ago
Because of no change of k in the code the logic worked and it remain as k=30.


Post your comments here:

Your comments will be displayed after verification.