Search...
Home Aptitude Logical Verbal CA Current Affairs GK Engineering Interview Online Test Puzzles
Marks : 0/20
Total number of questions : 20
Number of answered questions : 0
Number of unanswered questions : 20
1. Which of the following statements are correct about the below C-program?
#include<stdio.h>
int main()
{
int x = 10, y = 100%90, i;
for(i=1; i<10; i++)
if(x != y);
printf("x = %d y = %d\n", x, y);
return 0;
}
https://www.indiabix.com/online-test/c-programming-test/11 1/12
8/10/2018 Test Result
#include<stdio.h>
int main()
{
int k, num=30;
k = (num>5 ? (num <=10 ? 100 : 200): 500);
printf("%d\n", num);
return 0;
}
A.200
B.30
C.100
D.500
Explanation:
Step 1: int k, num=30; here variable k and num are declared as an integer type and variable num is initialized to '30'.
Step 2: k = (num>5 ? (num <=10 ? 100 : 200): 500); This statement does not affect the output of the program.
Because we are going to print the variable num in the next statement. So, we skip this statement.
Step 3: printf("%d\n", num); It prints the value of variable num '30'
Step 3: Hence the output of the program is '30'
#include<stdio.h>
int main()
{
struct emp
{
char name[20];
float sal;
};
struct emp e[10];
int i;
for(i=0; i<=9; i++)
scanf("%s %f", e[i].name, &e[i].sal);
return 0;
}
A.Suspicious pointer conversion
B.Floating point formats not linked (Run time error)
C.Cannot use scanf() for structures
D.Strings cannot be nested inside structures
Explanation:
C:\>myprogram.exe
Sundar
2555.50
https://www.indiabix.com/online-test/c-programming-test/11 2/12
8/10/2018 Test Result
scanf : floating point formats not linked
Abnormal program termination
The program terminates abnormally at the time of entering the float value for e[i].sal.
Solution:
Just add the following function in your program. It will force the compiler to include required libraries for handling
floating point linkages.
4. The keyword used to transfer control from a function back to the calling function is
A.switch
B.goto
C.go back
D.return
Explanation:
The keyword return is used to transfer control from a function back to the calling function.
Example:
#include<stdio.h>
int add(int, int); /* Function prototype */
int main()
{
int a = 4, b = 3, c;
c = add(a, b);
printf("c = %d\n", c);
return 0;
}
int add(int a, int b)
{
/* returns the value and control back to main() function */
return (a+b);
}
Output:
c=7
https://www.indiabix.com/online-test/c-programming-test/11 3/12
8/10/2018 Test Result
Explanation:
Yes, this function calculates and return the factorial value of an given integer num.
#include<stdio.h>
int main()
{
float a=3.14;
char *j;
j = (char*)&a;
printf("%d\n", *j);
return 0;
}
A.It prints ASCII value of the binary number present in the first byte of a float variable a.
B.It prints character equivalent of the binary number present in the first byte of a float variable a.
C.It will print 3
D.It will print a garbage value
https://www.indiabix.com/online-test/c-programming-test/11 4/12
8/10/2018 Test Result
j++;
k++;
printf("%u %u\n", j, k);
return 0;
}
A.Yes
B.No
Explanation:
The following error will be displayed while compiling above program in TurboC.
Compiling PROGRAM.C:
Error PROGRAM.C 8: Size of the type is unknown or zero.
A.1
B.1,4
C.2,3
D.2,4
Explanation:
1. The array int num[26]; can store 26 elements. This statement is true.
2. The expression num[1] designates the very first element in the array. This statement is false, because it designates
the second element of the array.
3. It is necessary to initialize the array at the time of declaration. This statement is false.
4. The declaration num[SIZE] is allowed if SIZE is a macro. This statement is true, because the MACRO just
replaces the symbol SIZE with given value.
https://www.indiabix.com/online-test/c-programming-test/11 5/12
8/10/2018 Test Result
9. The library function used to find the last occurrence of a character in a string is
A.strnstr()
B.laststr()
C.strrchr()
D.strstr()
Explanation:
Example:
#include <string.h>
#include <stdio.h>
int main(void)
{
char text[] = "I learn through IndiaBIX.com";
char *ptr, c = 'i';
Output:
10. If char=1, int=4, and float=4 bytes size, What will be the output of the program ?
#include<stdio.h>
int main()
{
char ch = 'A';
printf("%d, %d, %d", sizeof(ch), sizeof('A'), sizeof(3.14f));
return 0;
}
A.1, 2, 4
B.1, 4, 4
C.2, 2, 4
D.2, 4, 8
Explanation:
Step 1: char ch = 'A'; The variable ch is declared as an character type and initialized with value 'A'.
Step 2:
sizeof('A') becomes sizeof(65). The size of int is 4 bytes (as mentioned in the question).
int main()
{
char str[] = "Nagpur";
str[0]='K';
printf("%s, ", str);
str = "Kanpur";
printf("%s", str+1);
return 0;
}
A.Kagpur, Kanpur
B.Nagpur, Kanpur
C.Kagpur, anpur
D.Error
Explanation:
The statement str = "Kanpur"; generates the LVALUE required error. We have to use strcpy function to copy a
string.
To remove error we have to change this statement str = "Kanpur"; to strcpy(str, "Kanpur");
https://www.indiabix.com/online-test/c-programming-test/11 7/12
8/10/2018 Test Result
#include<stdio.h>
int main()
{
int i=4, j=8;
printf("%d, %d, %d\n", i|j&j|i, i|j&j|i, i^j);
return 0;
}
A.12, 12, 12
B.112, 1, 12
C.32, 1, 12
D.-64, 1, 12
Explanation:
The following is the example program to explain "using bit fields inside an union".
#include<stdio.h>
union Point
{
unsigned int x:4;
unsigned int y:4;
int res;
};
int main()
{
union Point pt;
pt.x = 2;
pt.y = 3;
pt.res = pt.y;
return 0;
}
// Output: The value of res = 3
int main()
{
FILE *fp;
char ch;
int i=1;
fp = fopen("myfile.c", "r");
while((ch=getc(fp))!=EOF)
{
if(ch == '\n')
i++;
}
fclose(fp);
return 0;
}
A.The code counts number of characters in the file
B.The code counts number of words in the file
C.The code counts number of blank lines in the file
D.The code counts number of lines in the file
Explanation:
This program counts the number of lines in the file myfile.c by counting the character '\n' in that file.
15. The first argument to be supplied at command-line must always be count of total arguments.
A.True
B.False
#include<stdio.h>
int main()
{
char c=48;
int i, mask=01;
for(i=1; i<=5; i++)
{
printf("%c", c|mask);
mask = mask<<1;
}
return 0;
}
A.12400
https://www.indiabix.com/online-test/c-programming-test/11 9/12
8/10/2018 Test Result
B.12480
C.12500
D.12556
Explanation:
since the type 'sdata' is not known at the point of declaring the structure
18.Which header file should you include, if you are going to develop a function, which can accept variable number of
arguments?
A.varagrg.h
B.stdlib.h
C.stdio.h
D.stdarg.h
https://www.indiabix.com/online-test/c-programming-test/11 10/12
8/10/2018 Test Result
int main()
{
varfun(3, 7, -11.2, 0.66);
return 0;
}
void varfun(int n, ...)
{
float *ptr;
int num;
va_start(ptr, n);
num = va_arg(ptr, int);
printf("%d", num);
}
A.Error: too many parameters
B.Error: invalid access to list member
C.Error: ptr must be type of va_list
D.No error
20. va_list is an array that holds information needed by va_arg and va_end
A.True
B.False
Feedback
Quality of the Test : -- Select --
Comments:
...
Submit Feedback
https://www.indiabix.com/online-test/c-programming-test/11 11/12
8/10/2018 Test Result
© 2009 - 2018 by IndiaBIX™ Technologies. All Rights Reserved. | Copyright | Terms of Use & Privacy Policy
https://www.indiabix.com/online-test/c-programming-test/11 12/12