• Courses
  • Tutorials
  • Jobs
  • Practice
  • Contests

C Quiz - 109

Question 1

In the following program snippet, both s1 and s2 would be variables of structure type defined as below and there won\'t be any compilation issue. C
typedef struct Student
{
 int rollno;
 int total;
} Student;

Student s1;
struct Student s2;
  • TRUE
  • FALSE

Question 2

Pick the best statement for the following program. C
#include \"stdio.h\"

int foo(int a)
{
 printf(\"%d\",a);
 return 0;
}

int main()
{
 foo;
 return 0;
}
  • It’ll result in compile error because foo is used without parentheses.
  • No compile error and some garbage value would be passed to foo function. This would make foo to be executed with output “garbage integer”.
  • No compile error but foo function wouldn’t be executed. The program wouldn\'t print anything.
  • No compile error and ZERO (i.e. 0) would be passed to foo function. This would make foo to be executed with output 0.

Question 3

Find out the correct statement for the following program. C
#include \"stdio.h\"

typedef int (*funPtr)(int);

int inc(int a)
{
 printf(\"Inside inc() %d\\n\",a);
 return (a+1);
}

int main()
{

 funPtr incPtr1 = NULL, incPtr2 = NULL;

 incPtr1 = &inc; /* (1) */
 incPtr2 = inc; /* (2) */

 (*incPtr1)(5); /* (3) */
 incPtr2(5); /* (4)*/

 return 0;
}
  • Line with comment (1) will give compile error.
  • Line with comment (2) will give compile error.
  • Lines with (1) & (3) will give compile error.
  • Lines with (2) & (4) will give compile error.
  • No compile error and program will run without any issue.

Question 4

Find out the correct statement for the following program. C
#include \"stdio.h\"

int * gPtr;

int main()
{
 int * lPtr = NULL;

 if(gPtr == lPtr)
 {
   printf(\"Equal!\");
 }
 else
 {
  printf(\"Not Equal\");
 }

 return 0;
}
  • It’ll always print Equal.
  • It’ll always print Not Equal.
  • Since gPtr isn’t initialized in the program, it’ll print sometimes Equal and at other times Not Equal.

Question 5

Find out the correct statement for the following program. C
#include \"stdio.h\"

int * arrPtr[5];

int main()
{
 if(*(arrPtr+2) == *(arrPtr+4))
 {
   printf(\"Equal!\");
 }
 else
 {
  printf(\"Not Equal\");
 }
 return 0;
}
  • Compile Error
  • It’ll always print Equal.
  • It’ll always print Not Equal.
  • Since elements of arrPtr aren’t initialized in the program, it’ll print either Equal or Not Equal.

There are 5 questions to complete.

Last Updated :
Take a part in the ongoing discussion