edited by
537 views
3 votes
3 votes

What will be the output of the following program, for k=8?

#include<stdio.h>
void main()
{
int i= 2, j=3, k;
scanf("%d",&k);
switch(k%2)
{
case 5<4:printf("k is even"); break;
case 10>9: printf("k is odd"); break;
default :printf("end");
}
}


Doubt:  8%2=0

             then which case it will print .?

or directly it will print  k is even bcs of mod=0

edited by

1 Answer

2 votes
2 votes
#include<stdio.h>
void main()
{
    int i= 2, j=3, k;
    scanf("%d",&k);
    switch(k%2)
    {
        // Case condition will be look this
        case 0:printf("k is even"); break; // 5<4 which is false treat as zero
        case 1: printf("k is odd"); break; // 10>9 which true teat as 1
        default :printf("end");
    }
}

It is will print even or odd with respect to value of k

Related questions

0 votes
0 votes
1 answer
1
Debargha Mitra Roy asked Apr 16
76 views
#include <stdio.h int main() { int a[3] = {1, 3, 5, 7, 9, 11}; int *ptr = a[0]; ptr += sizeof(int); printf("%d", *ptr); return 0; }(Assume size of int to be $2$ bytes.)T...
0 votes
0 votes
2 answers
3
Debargha Mitra Roy asked Apr 10
120 views
What is the output of the below code?#include <stdio.h void main() { static int var = 5; printf("%d ", var ); if (var) main(); }a. 1 2 3 4 5b. 1c. 5 4 3 2 1d. Error
1 votes
1 votes
1 answer
4
SSR17 asked Feb 29
256 views
#include <stdio.h int main() { int i = -1; int x = (unsigned char)i; printf("%d", x); return 0; }output is 255 , but please explain how