1. What will be the output of the following C code?
-
#include
-
int main()
-
{
-
int a[5] = {1, 2, 3, 4, 5};
-
int i;
-
for (i = 0; i < 5; i++)
-
if ((char)a[i] == '5')
-
printf("%dn", a[i]);
-
else
-
printf("FAILn");
-
}
a) The compiler will flag an error
b) The program will compile and print the output 5
c) The program will compile and print the ASCII value of 5
d) The program will compile and print FAIL for 5 times
Answer: d
Clarification: The ASCII value of 5 is 53, the char type-casted integral value 5 is 5 only.
Output:
$ cc pgm1.c
$ a.out
FAIL
FAIL
FAIL
FAIL
FAIL
2. The format identifier ā%iā is also used for _____ data type.
a) char
b) int
c) float
d) double
Answer: b
Clarification: Both %d and %i can be used as a format identifier for int data type.
3. Which data type is most suitable for storing a number 65000 in a 32-bit system?
a) signed short
b) unsigned short
c) long
d) int
Answer: b
Clarification: 65000 comes in the range of short (16-bit) which occupies the least memory. Signed short ranges from -32768 to 32767 and hence we should use unsigned short.
4. Which of the following is a User-defined data type?
a) typedef int Boolean;
b) typedef enum {Mon, Tue, Wed, Thu, Fri} Workdays;
c) struct {char name[10], int age};
d) all of the mentioned
Answer: d
Clarification: typedef and struct are used to define user-defined data types.
5. What is the size of an int data type?
a) 4 Bytes
b) 8 Bytes
c) Depends on the system/compiler
d) Cannot be determined
Answer: c
Clarification: The size of the data types depend on the system.
6. What will be the output of the following C code?
-
#include
-
int main()
-
{
-
signed char chr;
-
chr = 128;
-
printf("%dn", chr);
-
return 0;
-
}
a) 128
b) -128
c) Depends on the compiler
d) None of the mentioned
Answer: b
Clarification: signed char will be a negative number.
Output:
$ cc pgm2.c
$ a.out
-128
7. What will be the output of the following C code?
-
#include
-
int main()
-
{
-
char c;
-
int i = 0;
-
FILE *file;
-
file = fopen("test.txt", "w+");
-
fprintf(file, "%c", 'a');
-
fprintf(file, "%c", -1);
-
fprintf(file, "%c", 'b');
-
fclose(file);
-
file = fopen("test.txt", "r");
-
while ((c = fgetc(file)) != -1)
-
printf("%c", c);
-
return 0;
-
}
a) a
b) Infinite loop
c) Depends on what fgetc returns
d) Depends on the compiler
Answer: a
Clarification: None.
Output:
$ cc pgm3.c
$ a.out
a
8. What is short int in C programming?
a) The basic data type of C
b) Qualifier
c) Short is the qualifier and int is the basic data type
d) All of the mentioned
Answer: c
Clarification: None.