1. What would be the output of the following program?
#include
main()
{
extern int a;
printf("%d",a);;
}
int a=20;
(a) 20
(b) 0
(c) Garbage value
(d) Error!!
2. What would be the output of the following program?
Main()
{
int a[5]={2,3};
printf("
%d %d %d",a[2],a[3],a[4]);
}
(a) garbage value
(b) 2 3 3
(c) 3 2 2
(d) 0 0 0
3. What would be the output of the following program?
Main()
{
inti=-3,j=2,k=0,m;
m=++i&&++j||++k;
printf("
%d %d %d %d",i,j,k,m);
}
(a) -2 3 0 1
(b) -3 2 0 1
(c) -2 3 1 1
(d) error
4. What would be the output of the following program?
Main()
{
int a,b;
a=sumdig(123);
b=sumdig(123);
printf("%d %d",a,b);
}
sumdig(int n)
{
static int s=0;
int d;
if(n!=0)
{
d=n%10;
n=(n-d)/10;
s=s+d;
sumdig(n);
}
else return(s);
}
(a) 12 6
(b) 6 12
(c) 3 15
(d) Error
5. What would be the output of the following program?
#define cube(x) (x*x*x)
main()
{
int a,b=3;
a=cube(b++);
printf("
%d %d",a,b);
}
(a) 64 4
(b) 27 4
(c) 27 6
(d) 64 6
6. What would be the output of the following program?
Main()
{
const int x=get();
printf("%d",x);
}
get()
{
return(20);
}
(a) 20
(b) Garbage value
(c) Error
(d) 0
7. A function has this prototype void f1 (int **x), how will you call this function?
(a) int **a;
(b) int a;
(c) int *a;
(d) int a=5;
f1(a); f1(&a); f1(&a); f1(&&a);
8. Pointout the error, if any, in the for loop
main ()
{
int l=1;
for (;;)
{
printf ("%d", l++);
if (l>10)
break;
}
}
(a) The condition in the for loop is a must
(b) The two semicolons should be dropped
(c) The for loop should be replaced by awhile loop
(d) No error
9. Can the following piece of code be executed?
Int main(void)
{
char stra[10]="compile",strb[10];
my_strcpy(strb,stra);
puts(strb);
}
char * my_strcpy(char *destination,char *source)
{
char *p=destination;
while(*source!='')
{
*p++=*source++;
}
*p='';
return destination;
}
(a) compilation will only give a warning but will proceed to execute & will display "compile"
(b) the compilation error char *(char *,char *) differs in levels of indirection from 'int()' will occur
(c) yes & it will print compile on the screen
(d) none of the above
10. What would be the output of the following program?
#include
main()
{
char str[5]="fast";
static char *ptr_to_array = str;
printf("%s",ptr_to_array);
}
(a) compilation will only give a warning but will proceed to execute & will display "fast"
(b) display "fast" on screen
(c) Will give a compilation error
(d) None of the above
11. What would be the output of the following program?
Main ()
{
int num,*p;
num=5;
p=#
printf("%d",*p);
}
(a) 6
(b) 5
(c) Junk value
(d) Compilation error
12. What would be the output of the following program?
Main()
{
int a[3]={2,3,4};
char *p;
p=a;
p=(char *)((int *)p+1);
printf("%d",p);
}
(a) 2
(b) 0
(c) Junk value
(d) 3
13. What would be the output of the following program?
Main()
{
int i=10;
fn(i);
printf("%d",i);
}
fn(int i)
{
return ++i;
}
(a) 10
(b) 11
(c) 12
(d) Compilation error
14. What will be the value of i & j after the loop is executed?
For (i=0, j=0; i<5, j<25; i++, j++)
(a) i=4, j= 24
(b) I=24, j= 24
(c) I=25, j= 25
(d) I=5, j=25
15. What would be the output of the following program?
Main()
{
int i,j;
i=10;
j=sizeof(++i);
printf("%d",i);
}
(a) 11
(b) 10
(c) 4
(d) Compilation error
16. What would be the output of the following program?
Main ()
{
int i=7;
printf ("%d",i++*i++);
}
(a) 49
(b) 56
(c) 72
(d) Compilation error
17. What will the printf print?
Main()
{
char *p,*f();
p=f();
printf("f() returns:%s",p);
}
char *f()
{
char result[80];
strcpy(result,"anything will do");
return (result);
}
(a) f() returns: anything will do
(b) f () returns:
(c) compilation error
(d) The printf statement is not going to be executed
18. How many times the following program would print 'jamboree'?
Main ()
{
printf("
jamboree");
main();
}
(a) infinite number of times
(b) 32767 times
(c) 65535 times
(d) Till the stack does not overflow
19. Notice the error in the default statement in the code snippet below. Will it give a compilation error?
Main()
{
int a=10,j;
j=fn(a);
switch(j)
{
case 30: printf("the value is 30");
break;
case 50: printf("the value is 50");
break;
default:printf("the value is not 30 or 50");
}
}
fn(int a)
{
return (++a);
}
(a) will display "the value is 30"
(b) will display "the value is not 30 or 50"
(c) yes a compilation error would happen
(d) no compilation errors but there will be no output on the screen
20. What would be the output of the following program?
Main()
{
struct emp
{
char name[20];
int age;
float sal;
};
struct emp e = {"tiger"};
printf("
%d %f",e.age,e.sal);
}
(a) 0 0.000000
(b) Garbage values
(c) Error
(d) None of the above