Mock test of c programming with answer

Mock test of c programming with answer

1. Point out error, if any, in the following program

int main(){
int i=1;
switch(i){
case 1:
printf("\nRadioactive cats have 18 half-lives");
break;
case 1*2+4:
printf("\nBottle for rent -inquire within");
break;
}
}

Answer: No error.

Constant expression like 1*2+4 is acceptable in cases of a switch.

2. Point out the error, if any, in the following program

int main(){
int a=10,b;
a>= 5? b=100: b=200;
printf("\n%d",b);
}

Answer: lvalue required in function main (). The second assignment should be written in parenthesis as follows:

a>= 5? b=100: (b=200);

3. We should not read after a write to a file without an intervening call to fflush(), fseek() or rewind() < TRUE/FALSE>

Answer: True
4. In the following code, is p2 an integer or an integer pointer?

typedef int* ptr
ptr p1,p2;

Answer: Integer pointer

5. Point out the error in the following program

main(){
const int x;
x=128;
printf("%d",x);
}

Answer: x should have been initialized where it is declared.

6. What is the difference between the following declarations?

const char *s;
char const *s;

Answer: No difference

7. What is the difference between the following declarations?

const char *const s; 
char const *const s;

Answer: No difference

8. Point out the error in the following program

main(){
int a=10;
void f();
a=f();
printf("\n%d",a);
}

void f(){
printf("\nHi");
}

Answer:  The program is trying to collect the value of a "void" function into an integer variable.

9. In the following program how would you print 50 using p?

main(){
int a[]={10, 20, 30, 40, 50};
char *p;
p= (char*) a;
}

Answer: printf("\n%d",*((int*)p+4));

10. Point out the error in the following program

main(){
const char *fun();
*fun()='A';
}
const char *fun(){
return "Hello";
}

Answer: fun() returns to a "const char" pointer which cannot be modified

11. For the following C program

int x(char *a){
a=(char *) malloc(10*sizeof(char));
*a="hello";
}
main(){
char *a="new";
x(a);
printf("%s",a);
}

The output is
a) Hello
b) New
c) Hello new
d) Run time error

Answer: (b)

12.

int f()
void main(){
f(1);
f(1,2);
f(1,2,3);
}
f(int i,int j,int k){
printf("%d %d %d",i,j,k);
}

What are the numbers of syntax errors in the above?

Answer: None.

14.

void main(){
int i=7;
printf("%d",i++*i++);
}

Answer: 56

15.

#define one 0
#ifdef one

printf("oneis defined ");
#ifndef one
printf("one is not defined ");

Answer: "one is defined"

16.

void main(){
intcount=10,*temp,sum=0;
temp=&count;
*temp=20;
temp=&sum;
*temp=count;
printf("%d %d %d ",count,*temp,sum);
}

Answer: 20 20 20

17. There was question in c working only on UNIX machine with pattern matching.

18. What is alloca ()

Answer: It allocates and frees memory after use/after getting out of scope

19.
main(){
static i=3;
printf("%d",i--);
return i>0 ? main():0;
}

Answer: 321

20.

char *foo(){
char result[100]);
strcpy(result,"anything is good");
return(result);
}
void main(){
char *j;
j=foo()
printf("%s",j);
}

Answer: anything is good.

21.
void main(){
char *s[]={ "dharma","hewlettpackard","siemens","ibm"};
char **p;
p=s;
printf("%s",++*p);
printf("%s",*p++);
printf("%s",++*p);
}

Answer: "harma" (p->add(dharma) && (*p)->harma)
"harma" (after printing, p->add(hewlett-packard) &&(*p)->harma)
"ewlett-packard"

22.
void main(){
int d=5;
printf("%f",d);
}

Answer: Undefined

23.
void main(){
int i;
for(i=1;i<4,i++)
switch(i)
case 1: printf("%d",i);break;
{
case 2:printf("%d",i);break;
case 3:printf("%d",i);break;
}
switch(i) case 4:printf("%d",i);
}

Answer: 1,2,3,4

24.

void main(){
char *s="\12345s\n";
printf("%d",sizeof(s));
}

Answer: 6

25.
void main(){
unsigned i=1; /* unsigned char k= -1 => k=255; */
signed j=-1; /* char k= -1 => k=65535 */
/* unsigned or signed int k= -1 =>k=65535 */
if(i<j)
printf("less");
else if(i>j)
printf("greater");
else if(i==j)
printf("equal");
}

Answer: less

26.
void main(){
float j;
j=1000*1000;
printf("%f",j);
}

1. 1000000
2. Overflow
3. Error
4. None

Answer: 4

27.

How do you declare an array of N pointers to functions returning pointers to functions returning pointers to characters?

Answer: The first part of this question can be answered in at least three ways:

28.

#define MAN(x,y)
(x)>(y)?(x):(y){
inti=10;
j=5;
k=0;
k= MAX(i++,++j)
printf(%d %d %d %d,i,j,k)
}

Ans. 10 5 0

29.
What is the output of the following?

int i;
i=1;
i=i+2*i++;
printf(%d,i);

Ans. 4

30.

FILE *fp1,*fp2;
fp1=fopen("one","w")
fp2=fopen("one","w")
fputc('A',fp1)
fputc('B',fp2)
fclose(fp1)
fclose(fp2)

}

a.error
b.
c.
d.

Answer: No error. But it will over writes on same file.

31. For the following C program

#define AREA(x)(3.14*x*x)
main(){
floatr1=6.25,r2=2.5,a;
a=AREA(r1);
printf("\n Area of the circle is %f", a);
a=AREA(r2);
printf("\n Area of the circle is %f", a);
}

32. What is the output?
Ans. Area of the circle is 122.656250
Area of the circle is 19.625000

33
main(){
static i=3;
printf("%d",i--);
return i>0 ? main():0;
}

Answer: 321

34

int f()
void main(){
f(1);
f(1,2);
f(1,2,3);
}

f(int i,int j,int k){
printf("%d %d %d",i,j,k);
}

35. What is the number of syntax errors in the above?
Answer: None.

36.

void main(){
int i=7;
printf("%d",i++*i++);
}

Ans: 56

37.

#define one 0
#ifdef one
printf("oneis defined ");
#ifndef one
printf("one is not defined ");
Ans: "one is defined"

38.

void main(){
intcount=10,*temp,sum=0;
temp=&count;
*temp=20;
temp=&sum;
*temp=count;
printf("%d %d %d ",count,*temp,sum);
}

Answer: 20 20 20

39. For the following C program
void main(){
unsigned char c;
for(c=0;c!=256;c=c+2)
printf("%d",c);
getch();
}

(a) 127
(b) 128
(c) 256
(d) Infinitely

Answer: (d)

40. For the following program

int i;
i=2;
i++;
if(i==4){
printf(i=4);
}
else{
printf(i=3);
}

41. Output of the program?

a) 4
b) 3
c) unpredictable
d) None

Answer: (b)

42. What is FAT?
a) File Allocation Table
b) File Access Table
c) FDD Allocation Table
d) None of the above
Answer: (a)

28.
struct list{
int x;
struct list *next;
}*head;
struct head.x =100

Is the above assignment to pointer is correct or wrong?
Answer: Wrong

If you have any questions in above Mock test of c programming with answer, you can ask here.

No comments: