Sail E0 Webinar

MCQs

Total Questions : 72 | Page 5 of 8 pages
Question 41.


What will be the output of the program ?


#include<stdio.h>
int main()
{
struct byte
{
int one:1;
};
struct byte var = {1};
printf("%d\n" , var.one);
return 0;
}
  1.    1
  2.    -1
  3.    0
  4.    Error
 Discuss Question
Answer: Option B. -> -1

No answer description available for this question. 


Question 42.


What will be the output of the program in Turbo C (under DOS)?


#include<stdio.h>
int main()
{
struct emp
{
char *n;
int age;
};
struct emp e1 = {"Dravid" , 23};
struct emp e2 = e1;
strupr(e2.n);
printf("%s\n" , e1.n);
return 0;
}
  1.    Error: Invalid structure assignment
  2.    DRAVID
  3.    Dravid
  4.    No output
 Discuss Question
Answer: Option B. -> DRAVID

No answer description available for this question. 


Question 43.


What will be the output of the program in 16-bit platform (under DOS)?


#include<stdio.h>
int main()
{
struct node
{
int data;
struct node *link;
};
struct node *p, *q;
p = (struct node *) malloc(sizeof(struct node));
q = (struct node *) malloc(sizeof(struct node));
printf("%d, %d\n", sizeof(p), sizeof(q));
return 0;
}
  1.    2, 2
  2.    8, 8
  3.    5, 5
  4.    4, 4
 Discuss Question
Answer: Option A. -> 2, 2

No answer description available for this question. 


Question 44.


What will be the output of the program ?


#include<stdio.h>
int main()
{
int i=4, j=8;
printf ("%d, %d, %d\n" , i|j&j|i, i|j&j|i, i^j);
return 0;
}
  1.    12, 12, 12
  2.    112, 1, 12
  3.    32, 1, 12
  4.    -64, 1, 12
 Discuss Question
Answer: Option A. -> 12, 12, 12

No answer description available for this question. 


Question 45.


What will be the output of the program ?


#include<stdio.h>
int main()
{
enum status {pass, fail, absent};
enum status stud1, stud2, stud3;
stud1 = pass;
stud2 = absent;
stud3 = fail;
printf("%d %d %d\n" , stud1, stud2, stud3);
return 0;
  1.    0, 1, 2
  2.    1, 2, 3
  3.    0, 2, 1
  4.    1, 3, 2
 Discuss Question
Answer: Option C. -> 0, 2, 1

No answer description available for this question. 


Question 46.


What will be the output of the program ?


#include<stdio.h>
int main()
{
enum days {MON=-1, TUE, WED=6, THU, FRI, SAT};
printf("%d, %d, %d, %d, %d, %d\n" , MON, TUE, THU, FRI, SAT);
return 0;
}
  1.    -1, 0, 1, 2, 3, 4
  2.    -1, 2, 6, 3, 4, 5
  3.    -1, 0, 6, 2, 3, 4
  4.    -1, 0, 6, 7, 8, 9
 Discuss Question
Answer: Option D. -> -1, 0, 6, 7, 8, 9

No answer description available for this question. 


Question 47.


What will be the output of the program in 16 bit platform (Turbo C under DOS) ?


#include<stdio.h>
int main()
{
struct value
{
int bit1 : 1;
int bit3 : 4;
int bit4 : 4;
}bit;
printf("%d\n" , sizeof(bit));
return 0;
}
  1.    1
  2.    2
  3.    4
  4.    9
 Discuss Question
Answer: Option B. -> 2

Since C is a compiler dependent language, in Turbo C (DOS) the output will be 2, but in GCC 

(Linux) the output will be 4.


Question 48.


What will be the output of the program ?


#include<stdio.h>
int main()
{
union var
{
int a, b;
};
union var v;
v . a=10;
v . b=20;
printf("%d\n" , v . a);
return 0;
}
  1.    10
  2.    20
  3.    30
  4.    0
 Discuss Question
Answer: Option B. -> 20

No answer description available for this question. 


Question 49.


What will be the output of the program ?


#include<stdio.h>
int main()
{
struct value
{
int bit1 : 1;
int bit3 : 4;
int bit4 : 4;
}bit={1, 2, 13};
printf("%d, %d, %d\n" , bit.bit1, bit.bit3, bit.bit4);
return 0;
}
  1.    1, 2, 13
  2.    1, 4, 4
  3.    -1, 2, -3
  4.    -1, -2, -13
 Discuss Question
Answer: Option C. -> -1, 2, -3

Note the below statement inside the struct:
int bit1:1; --> 'int' indicates that it is a SIGNED integer.
For signed integers the leftmost bit will be taken for +/- sign.
If you store 1 in 1-bit field:
The left most bit is 1, so the system will treat the value as negative number.
The 2's complement method is used by the system to handle the negative values.
Therefore, the data stored is 1. The 2's complement of 1 is also 1 (negative).
Therefore -1 is printed.
If you store 2 in 4-bits field:
Binary 2: 0010 (left most bit is 0, so system will treat it as positive value)
0010 is 2 
Therefore 2 is printed.
If you store 13 in 4-bits field:
Binary 13: 1101 (left most bit is 1, so system will treat it as negative value)
Find 2's complement of 1101: 
1's complement of 1101 : 0010
2's complement of 1101 : 0011 (Add 1 to the result of 1's complement)
0011 is 3 (but negative value)
Therefore -3 is printed.


Question 50.


What will be the output of the program ?


#include<stdio.h>
int main()
{
union a
{
int i;
char ch[2];
};
union a u;
u.ch[0]=3;
u.ch[1]=2;
printf("%d, %d, %d\n" , u.ch[0], u.ch[1], u.i);
return 0;
}
  1.    3, 2, 515
  2.    515, 2, 3
  3.    3, 2, 5
  4.    515, 515, 4
 Discuss Question
Answer: Option A. -> 3, 2, 515

The system will allocate 2 bytes for the union.

The statements u.ch[0]=3; u.ch[1]=2; store data in memory as given below.

What Will Be The Output Of The Program ?#include<stdio.h&...

Latest Videos

Latest Test Papers