C Programming Practice Set 6 Restricted Editing
C Programming Practice Set 6 Restricted Editing
#include <stdio.h>
int fun(int n)
{
for(;n > 0; n--)
printf("gatelectures.com\n");
return 0;
}
int main()
{
int (*ptr)(int ) = fun;
(*ptr)(3);
return 0;
}
A. gatelectures.com
gatelectures.com
gatelectures.com
B. gateectures.com
C. Compilation Error
D. Runtime error
2. What is printed by the following program
#include<stdio.h>
void gatelectures(int s, ...)
{
printf("%d ", s);
}
int main()
{
gatelectures(2, 4, 6, 8);
gatelectures(3, 6, 9);
return 0;
}
A. 2 3
B. 46
C. 24
D. 89
: | . . | |
,
3. What is the meaning of using extern before function declaration? For example following
function sum is made extern
{
return (x + y + z);
}
The above code compiled without any error or warning. If Line 1 is deleted, the above
code will show:
A. no compile warning or error
B. some compiler-warnings not leading to unintended results
C. some compiler-warnings due to type-mismatch eventually leading to unintended results
D. compiler errors
: | . . | |
,
6. Consider the following program. What does it print ?
#include <stdio.h>
int main(void)
{
int i;
int *ptr = (int *) malloc(5 * sizeof(int));
for (i=0; i<5; i++)
*(ptr + i) = i;
printf("%d ", *ptr++);
printf("%d ", (*ptr)++);
printf("%d ", *ptr);
printf("%d ", *++ptr);
printf("%d ", ++*ptr);
}
A. 01223
B. 101234
C. 01234
D. 12345
7. What is the output printed by the following program?
#include <stdio.h>
int fun(int arr[]) {
arr = arr+1;
printf("%d ", arr[0]);
}
int main(void) {
int arr[2] = {10, 20};
fun(arr);
printf("%d", arr[0]);
return 0;
}
A. 20 10
B. 20 20
C. 10 10
D. 10 20
8. What is the output of the following C code? Assume that the address of x is 2000 (in decimal)
and an integer requires four bytes of memory.
#include <stdio.h>
int main()
{
unsigned int x[4][3] = {{1, 2, 3}, {4, 5, 6},
{7, 8, 9}, {10, 11, 12}};
printf("%u, %u, %u", x+3, *(x+3), *(x+2)+3);
}
: | . . | |
,
A. 2036, 2036, 2036
B. 2012, 4, 2204
C. 2036, 10, 10
D. 2012, 4, 6
9. Which of the following is not a valid declaration in C?
1. short int x;
2. signed short x;
3. short x;
4. unsigned short x;
A. 3 and 4
B. 2
C. 1
D. All are valid
10. In the C language
A. At most one activation record exists between the current activation record and the
activation record for the main
B. The number of activation records between the current activation record and the
activation record for the main depends on the actual function calling sequence.
C. The visibility of global variables depends on the actual function calling sequence.
D. Recursion requires the activation record for the recursive function to be saved on a
different stack before the recursive function can be called.
(GATE CS 2002)
: | . . | |
,