1.
Which of the following is not a pointer declaration?
A. 
B. 
Char a[] = {‘1’, ‘2’, ‘3’, ‘4’};
C. 
D. 
2.
What will be the output?
int main(){
int i = 5;
int j = i / -2;
int k = i % -2;
printf("%d %d\n", j, k);
return 0;
}
A. 
B. 
C. 
D. 
3.
What will be the output/error?
int main(){
float i = 6.2;
float j = i % -2;
printf("%d\n", j);
return 0;
}
A. 
B. 
C. 
D. 
4.
What will be the output/error?
int main()
{
int a = 10, b = 20, c = 30;
if(!a >= 50)
b = 300;
c = 400;
printf("%d,%d,%d", a, b, c);
return 0;
}
A. 
B. 
C. 
D. 
5.
How to catch multi word string using scanf ?
A. 
B. 
C. 
D. 
6.
What will be the output/error?
void fun(int*);
int main()
{
int i = 10;
int *j = &i;
fun(j++);
return 0;
}
void fun(int *k)
{
printf("%d\n", *k);
}
A. 
B. 
C. 
D. 
7.
What will be the output/error?
void fun(int*);
int main()
{
int i = 10;
int *j = &i;
fun(++j);
return 0;
}
void fun(int *k)
{
printf("%d\n", *k);
}
A. 
B. 
C. 
D. 
8.
void fun(int*);
int main()
{
int i = 10;
int *j = &i;
fun(&i);
printf("%d ", *j);
return 0;
}
void fun(int *j)
{
int k=2;
j=&k;
printf("%d ", *j);
}
A. 
B. 
C. 
D. 
9.
Void main ()
{
int a[4] = {1,2,3,4};
max(&a[3]);
}
void max(int *z)
{
printf("%d",*z);
}
A. 
B. 
C. 
D. 
10.
Void main ()
{
int a[4] = {1,2,3,4};
max(a[2]);
}
void max(int z)
{
printf("%d",*z);
}
A. 
B. 
C. 
D. 
11.
Void main ()
{
int a[4] = {1,2,3,4}, i;
for(i=0; i < 4 ; i++)
{
max(&a[i]);
}
}
void max(int *z)
{ int i;
printf("%d",*z);
}
A. 
B. 
C. 
D. 
12.
Void main ()
{
int a[4] = {1,2,3,4}, i;
max(a);
}
void max(int z[])
{ int i;
for(i=0; i < 4; i++)
{
printf("%d\n", z[i]);
}
}
A. 
B. 
C. 
D. 
13.
Size of pointer in gcc32 compiler is
A. 
B. 
C. 
D. 
14.
Void main ()
{
int a[4] = {1,2,3,4}, i;
max(a);
}
void max(int *z)
{ int i;
for(i=0;i < 4 ; i++)
{
printf("%d\n", z[i]);
}
}
A. 
B. 
C. 
D. 
15.
Void main ()
{
int a[4] = {1,2,3,4}, i;
max(&a);
}
void max(int *z)
{ int i;
for(i=3;i>=0;i++)
{
printf("%d\n", z[i]);
}
}
A. 
B. 
C. 
D. 
16.
Void main ()
{
int a=10;
int *p = &a;
int **q = &p;
printf("%d, %d", *p, **q);
}
A. 
B. 
C. 
D. 
17.
Which of the following is a correct format for declaration of function?
A. 
Return-type function-name(argument type);
B. 
Return-type function-name(argument type){}
C. 
Return-type (argument type)function-name;
D. 
18.
Which of the following function declaration is illegal?
A. 
B. 
C. 
D. 
19.
Which function definition will run correctly?
A. 
Int sum(int a, int b) return (a, b);
B. 
Int sum(int a, int b) {return (a + b);}
C. 
Int sum(a, b) return (a + b);
D. 
20.
The value obtained in the function is given back to main by using ________ keyword.
A. 
B. 
C. 
D. 
21.
Can we use a function as a parameter of another function? [ Eg: void wow(int func()) ].
A. 
Yes, and we can use the function value conveniently
B. 
Yes, but we call the function again to get the value, not as convenient as in using variable
C. 
No, C does not support it
D. 
This case is compiler dependent
22.
void f(char**);
int main()
{
char *argv[] = { "ab", "cd", "ef", "gh", "ij", "kl" };
f(argv);
return 0;
}
void f(char **p)
{
char *t;
t = (p += sizeof(int))[-1];
printf("%sn", t);
}
A. 
B. 
C. 
D. 
23.
int main()
{
int a[5] = {1,2,3,4,5};
int *ptr = (int*)(&a+1);
printf("%d %d", *(a+1), *(ptr-1));
return 0;
}
A. 
B. 
C. 
D. 
24.
#define R 10
#define C 20
int main()
{
int (*p)[R][C];
printf("%d", sizeof(*p));
getchar();
return 0;
}
A. 
B. 
C. 
D. 
25.
Int fun(int *c)
{
int q = 10;
c = &q;
return *c;
}
int main()
{
int r = 20;
int *p = &r;
*p=fun(p);
printf("%d", *p);
return 0;
}
A. 
B. 
C. 
D.