Knowledge check.
- Choose one best answer from given 4 choices for each questions.
- Review before submit as you wont get a chance to review after submit.
- Max Time for quiz is 30 mins and Exam is 90 mins.
- Login is not required for an exam or a quiz.
- By submitting you formally acknowledge and accept terms and conditions mentioned here.
The following program is used to compare two strings without using string function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
int str_compare(char[], char[]);
int main()
{
int flag;
char str1[100], str2[100];
printf("Input first string\n");
scanf("%s", str1);
printf("Input second string\n");
scanf("%s", str2);
flag = str_compare(str1, str2);
if (flag == '\0')
printf("Entered strings are equal.\n");
else
printf("Entered strings are not equal.\n");
return 0;
}
int str_compare(char a[], char b[])
{
int count = 0;
while (a[count] == b[count])
{
if (a[count] == '\0' || b[count] == '\0')
break;
count++;
}
if (a[count] == '\0' && b[count] == '\0')
return 0;
else
return -1;
}
Which of the following operators in C has the lowest precedence?
Give the output of the following code snippet :
void func(int a)
{
a=200;
printf("%d",a);
}
void main()
{
printf("%d ",a);
}
The following program is used to add two complex numbers by passing structure to a function. Which of the following statement(s) given in the choices should be reordered to make the program compile, link and run and give the desired output?
struct complex
{
float real;
float imag;
};
struct complex Add(struct complex n1, struct complex n2);
int main()
{
struct complex n1, n2, temp;
printf("For first complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n1.real);
printf("Enter imaginary part :\n");
scanf("%f", &n1.imag);
printf("For second complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n2.real);
printf("Enter imaginary part :\n");
scanf("%f", &n2.imag);
temp = Add(n1, n2);
printf("Sum=%.1f+%.1fi", temp.real, temp.imag);
return 0;
}
struct complex Add(struct complex n1, struct complex n2)
{
return(temp);
struct complex temp;
temp.real = n1.real + n2.real;
temp.imag = n1.imag + n2.imag;
}
What is the output of the mathematical function sin(x)?
The following program is used to find length of a string without using string function. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
int string_length(char[]);
int main()
{
char str[100];
int length;
printf("Input a string\n");
scanf("%s", str);
length = string_length(str);
printf("Length of string %s = %d\n", str, length);
return 0;
}
int string_length(char s[])
{
int count = 0;
count++;
return count;
}
What type of argument needs to be passed to the getc() function in C?
In printf function in C, which is the format specifier used to print hexadecimal values?
The following program is used to display the student details using structures. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
struct student
{
char name[50];
int studId;
int marks;
};
int main()
{
int i, num;
printf("Enter number of students : \n");
scanf("%d",&num);
printf("Enter information of students:\n");
for (i = 0; i< num; ++i)
{
stud[i].studId = i + 1;
printf("\nStudent ID %d\n", stud[i].studId);
printf("Enter name: ");
scanf("%s", stud[i].name);
printf("Enter marks: ");
scanf("%d", &stud[i].marks);
printf("\n");
}
printf("Student Information :\n\n");
for (i = 0; i< num; ++i)
{
printf("\nStudent ID %d:\n", i + 1);
printf("Name: %s", stud[i].name);
printf("Marks: %d", stud[i].marks);
}
return 0;
}
The following program is used to reverse a string. Which of the following statement(s) given in the choices should be reordered to make the program compile, link and run and give the desired output?
#include < stdio.h>
#include < string.h>
int main()
{
char str[100], reverse[100];
int strlength, count, d;
printf("Input a string\n");
scanf("%s",str);
strlength = strlen(str);
reverse[d] = '\0';
for (count = strlength - 1, d = 0; count >= 0; count--, d++)
reverse[d] = str[count];
printf("%s\n", reverse);
return 0;
}
The following program is used to reverse a string. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
int main()
{
char str[100], reverse[100];
int strlength, count, d;
printf("Input a string\n");
scanf("%s",str);
strlength = strlen(str);
for (count = strlength - 1, d = 0; count >= 0; count--, d++)
reverse[d] = str[count];
reverse[d] = '\0';
printf("%s\n", reverse);
return 0;
}
The following program is used to find length of a string without using string function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
int string_length(char[]);
int main()
{
char str[100];
int length;
printf("Input a string\n");
scanf("%s", str);
length = string_length(str);
printf("Length of string %s = %d\n", str, length);
return 0;
}
int string_length(char s[])
{
int count = 0;
if (s[count] != '\0')
count++;
return count;
}
The following program is used to generate the palindrome of a number. Which of the following statement(s) given in the choices should be reordered to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int value,num, reverse = 0;
printf("Enter a number to reverse : ");
scanf("%d", &value);
num = value;
reverse = reverse * 10;
while (num != 0)
{
reverse = reverse + num % 10;
num = num / 10;
}
if (value == reverse)
printf(" %d is a Palindrome",value);
else
printf(" %d is not a Palindrome", value);
return 0;
}
Give the output of the following code snippet :
void main()
{
int k = 8;
int m = 7;
int z = k < m ? k = m : m++;
printf("%d", z);
}
The following program is used to find length of a string without using string function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
int string_length(char[]);
int main()
{
char str[100];
int length;
printf("Input a string\n");
scanf("%s", str);
length = string_length(str);
printf("Length of string %s = %d\n", str, length);
return 0;
}
int string_length(char s[])
{
int count = 0;
while (s != '\0')
count++;
return count;
}
Give the output of the following code snippet :
void main()
{
int x=1,y=2;
int a=x&y;
int b=x&&y;
printf("%d %d",a,b);
}
The following program is used to concatenate two strings without using string function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
void str_cat(char[], char[]);
int main()
{
char str1[100], str2[100];
printf("Input a string : \n");
scanf("%s", str1);
printf("Input string to concatenate : \n");
scanf("%s", str2);
str_cat(str1, str2);
printf("String obtained on concatenation : %s \n", str1);
return 0;
}
void str_cat(char str1[], char str2[])
{
int count = 0, d = 0;
while (str1[count] == '\0')
{
count++;
}
while (str2[d] != '\0')
{
str1[count] = str2[d];
d++;
count++;
}
str1[count] = '\0';
}
In printf function in C, which is the format specifier used to print decimal values?
The preprocessor provides the ability for which of the following options?
The following program is used to display the student details using structures. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
struct student
{
char name[50];
int studId;
int marks;
};
int main()
{
student stud[10];
int i, num;
printf("Enter number of students : \n");
scanf("%d",&num);
printf("Enter information of students:\n");
for (i = 0; i< num; ++i)
{
stud[i].studId = i + 1;
printf("\nStudent ID %d\n", stud[i].studId);
printf("Enter name: ");
scanf("%s", stud[i].name);
printf("Enter marks: ");
scanf("%d", &stud[i].marks);
printf("\n");
}
printf("Student Information :\n\n");
for (i = 0; i< num; ++i)
{
printf("\nStudent ID %d:\n", i + 1);
printf("Name: %s", stud[i].name);
printf("Marks: %d", stud[i].marks);
}
return 0;
}
Give the output of the following code snippet :
#define MAX 1000
int main()
{
printf("%d ", MAX);
return 0;
}
Name the escape sequence to print a tab space in printf function in C :
The following program is used to add two complex numbers by passing structure to a function. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
struct complex
{
float real;
float imag;
};
struct complex Add(struct complex n1, struct complex n2);
int main()
{
struct complex n1, n2, temp;
printf("For first complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n1.real);
printf("Enter imaginary part :\n");
scanf("%f", &n1.imag);
printf("For second complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n2.real);
printf("Enter imaginary part :\n");
scanf("%f", &n2.imag);
temp = Add(n1, n2);
printf("Sum=%.1f+%.1fi", temp.real, temp.imag);
return 0;
}
struct complex Add(struct complex n1, struct complex n2)
{
struct complex temp;
temp.real = n1.real + n2.real;
temp.imag = n1.imag + n2.imag;
return(temp);
}
The following program is used to add 'n' numbers. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include< stdio.h>
int main()
{
int num, sum = 0, count, value;
printf("Enter the number of integers to be added : \n");
scanf("%d", &num);
printf("Enter %d integers\n", num);
for (count = 1; count == num; count++)
{
scanf("%d", &value);
sum = sum + value;
}
printf("Sum of entered integers = %d\n", sum);
return 0;
}
Give the output of the following code snippet :
#define func(x, y) x + y - x
int main()
{
int i = 3, j = 3;
printf("%d\n",func(i*j, 2));
return 0;
}
Give the output of the following code :
int main()
{
int x=12, y=7, z;
z = x!=4 || y == 2;
printf("%d\n", z);
return 0;
}
The following program is used to swap two values. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int value1, value2, temp;
printf("\nEnter the value of value1 : ");
scanf("%d", &value1);
printf("\nEnter the value of value2 : ");
scanf("%d", &value2);
printf("Before Swapping\nvalue1 = %d\nvalue2 = %d\n", value1, value2);
value2 = temp;
printf("After Swapping\nvalue1 = %d\nvalue2 = %d\n", value1, value2);
return 0;
}
Which of the following are examples of mathematical functions in C?
The following program is used to add two distances ( inch to feet ) using structures. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
struct Distance
{
int feet;
float inch;
};
Distance dist1, dist2, sum;
void main()
{
printf("Enter information for 1st distance\n");
printf("Enter feet: ");
scanf("%d", &dist1.feet);
printf("Enter inch: ");
scanf("%f", &dist1.inch);
printf("\nEnter information for 2nd distance\n");
printf("Enter feet: ");
scanf("%d", &dist2.feet);
printf("Enter inch: ");
scanf("%f", &dist2.inch);
sum.feet = dist1.feet + dist2.feet;
sum.inch = dist1.inch + dist2.inch;
if (sum.inch>12.0)
{
sum.inch = sum.inch - 12.0;
++sum.feet;
}
printf("\nSum of distances=%d\'-%.1f\"", sum.feet, sum.inch);
}
Which of the following type specifiers are used to denote a floating point value in the scanf() function?
The following program is used to copy a file. Which of the following statement(s) given in the choices should be reordered to make the program compile, link and run and give the desired output?
#include < stdlib.h>
int main()
{
char ch;
FILE *source, *target;
source = fopen("CopyFile.txt", "r");
fclose(source);
if (source == NULL)
{
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
target = fopen("Destination.txt", "w");
if (target == NULL)
{
fclose(source);
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
while ((ch = fgetc(source)) != EOF)
fputc(ch, target);
printf("File copied successfully.\n");
fclose(target);
return 0;
}
Give the output of the following code snippet :
void main()
{
int x=3,y=6;
double z=sqrt((double)x);
printf("%.2f",z);
}
The following program is used to generate the palindrome of a number. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int value,num, reverse = 0;
printf("Enter a number to reverse : ");
scanf("%d", &value);
num = value;
while (num != 0)
{
reverse = reverse * 10;
reverse = reverse + num % 10;
num = num / 10;
}
if (value == reverse)
printf(" %d is a Palindrome",value);
else
printf(" %d is not a Palindrome", value);
return 0;
}
Give the output of the following code snippet:
void main()
{
int c;
scanf ("%d",c);
printf("Obtained value is %d", c);
}
Which of the following are types of C constants ?
The following program is used to generate the palindrome of a number. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int value,num, reverse = 0;
printf("Enter a number to reverse : ");
scanf("%d", &value);
num = value;
while (num != 0)
{
reverse = reverse * 10;
reverse = reverse + num;
num = num / 10;
}
if (value == reverse)
printf(" %d is a Palindrome",value);
else
printf(" %d is not a Palindrome", value);
return 0;
}
Which of the following are types of C constants ?
The following program is used to find length of a string without using string function. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
int string_length(char[]);
int main()
{
char str[100];
int length;
printf("Input a string\n");
scanf("%s", str);
length = string_length(str);
printf("Length of string %s = %d\n", str, length);
return 0;
}
int string_length(char s[])
{
int count = 0;
return count;
}
A character constant in C is an integer, with a single character within:
Give the output of the following code snippet :
#define CUBE(X) X*X*X
void main()
{
printf("%d ", CUBE(3));
printf("%d", CUBE(2+3));
}
The following program is used to delete a file. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int status;
if (status == 0)
printf("File has been deleted successfully\n");
else
{
printf("Unable to delete the file\n");
perror("Error");
}
return 0;
}
Give the output of the following code snippet :
int main()
{
int y=128;
const int x=y;
printf("%d\n", x);
return 0;
}
Give the output of the following code snippet :
void main()
{
int long;
long=10;
printf("%d",long);
}
What is a header file in C?
The following program is used to add two complex numbers by passing structure to a function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
struct complex
{
float real;
float imag;
};
struct complex Add(struct complex n1, struct complex n2);
int main()
{
struct complex n1, n2, temp;
printf("For first complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n1.real);
printf("Enter imaginary part :\n");
scanf("%f", &n1.imag);
printf("For second complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n2.real);
printf("Enter imaginary part :\n");
scanf("%f", &n2.imag);
temp = Add(struct complex n1, struct complex n2);
printf("Sum=%.1f+%.1fi", temp.real, temp.imag);
return 0;
}
struct complex Add(struct complex n1, struct complex n2)
{
struct complex temp;
temp.real = n1.real + n2.real;
temp.imag = n1.imag + n2.imag;
return(temp);
}
The following program is used to find the GCD and LCM of two numbers. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int a, b, x, y, temp, gcd, lcm;
printf("Enter two values : \n");
scanf("%d%d", &x, &y);
a = x;
b = y % 10;
while (b != 0)
{
temp = b;
b = a % b;
a = temp;
}
gcd = a;
lcm = (x*y) / gcd;
printf("Greatest common divisor of %d and %d = %d\n", x, y, gcd);
printf("Least common multiple of %d and %d = %d\n", x, y, lcm);
return 0;
}
The following program is used to copy a file. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdlib.h>
int main()
{
char ch;
FILE *source, *target;
source = fileopen("CopyFile.txt", "r");
if (source == NULL)
{
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
target = fopen("Destination.txt", "w");
if (target == NULL)
{
fclose(source);
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
while ((ch = fgetc(source)) != EOF)
fputc(ch, target);
printf("File copied successfully.\n");
fclose(source);
fclose(target);
return 0;
}
Input switching is invisible if input comes from another program using pipe mechanism in C.State true or false.
The following program is used to merge two arrays into a single array. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
void MergeArrays (int[], int, int[], int, int[]);
int main()
{
int arry1[100], arry2[100], num1, num2, c, result[200];
printf("Input number of elements in first array\n");
scanf("%d", &num1);
printf("Input %d integers\n", num1);
for (c = 0; c < num1; c++)
{
scanf("%d", &arry1[c]);
}
printf("Input number of elements in second array\n");
scanf("%d", &num2);
printf("Input %d integers\n", num2);
for (c = 0; c < num2; c++)
{
scanf("%d", &arry2[c]);
}
MergeArrays(arry1, num1, arry2, num2, result);
printf("Result array:\n");
for (c = 0; c < num1 + num2; c++)
{
printf("%d\n", result[c]);
}
return 0;
}
void MergeArrays (int arry1[], int num1, int arry2[], int num2, int result[])
{
int i, j, k;
j = k = 0;
for (i = 0; i < num1 + num2;)
{
if (j < num1 && k < num2)
{
if (arry1[j] < arry2[k])
{
result[i] = arry1[j];
j++;
}
else
{
result[i] = arry2[k];
k++;
}
i++;
}
{
for (; i < num1 + num2;)
{
result[i] = arry2[k];
k++;
i++;
}
}
else
{
for (; i < num1 + num2;)
{
result[i] = arry1[j];
j++;
i++;
}
}
}
}
The following program is used to find length of a string without using string function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
int string_length(char[]);
int main()
{
char str[100];
int length;
printf("Input a string\n");
scanf("%s", str);
length = string_length(str);
printf("Length of string %s = %d\n", str, length);
return 0;
}
int string_length(char s[])
{
int count = 0;
while (s[count] == '\0')
count++;
return count;
}
Give the output of the following code snippet :
#define SWAP(a,b)(a=a+b,b=a-b,a=a-b)
void main()
{
int a=3,b=10,c=5;
SWAP(a,b);
printf("%d %d",a,b);
}
The following program is used to find the substring in a string without using string function. Which of the following statement(s) given in the choices should reordered to make the program compile, link and run and give the desired output?
int main()
{
char str[100], sub[100];
int position, length, count;
printf("Input a string : \n");
scanf("%s",str);
printf("Enter the position and length of substring\n");
scanf("%d%d", &position, &length);
while (count < length)
{
sub[count] = str[position + count - 1];
count++;
}
count = 0;
sub[count] = '\0';
printf("Required substring is %s\n", sub);
return 0;
}
The following program is used to copy strings without using string function. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
int main()
{
char str[100], dest[100];
printf("Input a string\n");
scanf("%s",str);
copy_str(dest, str);
printf("Source string: %s\n", str);
printf("Destination string: %s\n", dest);
return 0;
}
void copy_str(char d[], char s[])
{
int count = 0;
while (s[count] != '\0')
{
d[count] = s[count];
count++;
}
d[count] = '\0';
}
The following program is used to add two complex numbers by passing structure to a function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
struct complex
{
float real;
float imag;
};
struct complex Add(struct complex n1, struct complex n2);
int main()
{
struct complex n1, n2, temp;
printf("For first complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n1.real);
printf("Enter imaginary part :\n");
scanf("%f", &n1.imag);
printf("For second complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n2.real);
printf("Enter imaginary part :\n");
scanf("%f", &n2.imag);
temp = Add(n1, n2);
printf("Sum=%.1f+%.1fi", temp.real, temp.imag);
return 0;
}
void complex Add(struct complex n1, struct complex n2)
{
struct complex temp;
temp.real = n1.real + n2.real;
temp.imag = n1.imag + n2.imag;
return(temp);
}
The following program is used to add two complex numbers by passing structure to a function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
structure complex
{
float real;
float imag;
};
struct complex Add(struct complex n1, struct complex n2);
int main()
{
struct complex n1, n2, temp;
printf("For first complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n1.real);
printf("Enter imaginary part :\n");
scanf("%f", &n1.imag);
printf("For second complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n2.real);
printf("Enter imaginary part :\n");
scanf("%f", &n2.imag);
temp = Add(n1, n2);
printf("Sum=%.1f+%.1fi", temp.real, temp.imag);
return 0;
}
struct complex Add(struct complex n1, struct complex n2)
{
struct complex temp;
temp.real = n1.real + n2.real;
temp.imag = n1.imag + n2.imag;
return(temp);
}
The following program is used to generate the fibonacci series. Which of the following statement(s) given in the choices should be removed to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int count, n, num1 = 0, num2 = 1, result = 0;
printf("Enter number of terms: ");
scanf("%d", &n);
printf("Fibonacci Series:\n %d %d ", num1, num2);
count = 2;
while (count< n)
{
result = num1 + num2;
count = num2;
num1 = num2;
num2 = result;
++count;
printf("%d ", result);
}
return 0;
}
The following program is used to compare two strings without using string function. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
int str_compare(char[], char[]);
int main()
{
int flag;
char str1[100], str2[100];
printf("Input first string\n");
scanf("%s", str1);
printf("Input second string\n");
scanf("%s", str2);
flag = str_compare(str1, str2);
if (flag == 0)
printf("Entered strings are equal.\n");
else
printf("Entered strings are not equal.\n");
return 0;
}
int str_compare(char a[], char b[])
{
int count = 0;
while (a[count] == b[count])
{
break;
count++;
}
if (a[count] == '\0' && b[count] == '\0')
return 0;
else
return -1;
}
The following program is used to swap two values. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int value1, value2, temp;
printf("\nEnter the value of value1 : ");
scanf("%d", &value1);
printf("\nEnter the value of value2 : ");
scanf("%d", &value2);
printf("Before Swapping\nvalue1 = %d\nvalue2 = %d\n", value1, value2);
temp = value1;
value2 = temp;
printf("After Swapping\nvalue1 = %d\nvalue2 = %d\n", value1, value2);
return 0;
}
The following program is used to sort an array of values using Bubble sort technique. Which of the following statement(s) given in the choices should be rearranged to make the program compile, link and run and give the desired output?
void bubble_sort(int arry[], int n);
int main()
{
int array[100], n, c;
printf("Enter number of elements\n");
scanf("%d", &n);
printf("Enter %d integers\n", n);
for (c = 0; c < n; c++)
scanf("%d", &array[c]);
bubble_sort(array, n);
printf("Sorted array in ascending order:\n");
for (c = 0; c < n; c++)
printf("%d\n", array[c]);
return 0;
}
void bubble_sort(int arry[], int n)
{
int c, d, temp;
for (c = 0; c < (n - 1); c++)
{
for (d = 0; d < n - c - 1; d++)
{
if (arry[d] > arry[d + 1])
{
arry[d] = arry[d + 1];
temp = arry[d];
arry[d + 1] = temp;
}
}
}
}
Give the output of the following code snippet :
int main()
{
#ifdef Hello
printf("Hello\t");
#else
printf("World\t");
#endif
}
The following program is used to find the maximum value in an array. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include< stdio.h>
int main()
{
int array[100], maximum, size, count, location = 1;
printf("\nEnter the number of elements in array : ");
scanf("%d", &size);
printf("Enter %d integers : ", size);
for (count = 0; count < size; count++)
scanf("\n%d", &array[count]);
maximum = array[0];
for (count = 1; count < size; count++)
{
maximum = array[count];
location = count + 1;
}
printf("Maximum element is present at location %d and its value is %d.\n", location, maximum);
return 0;
}
Which of the following statements is true about the scanf() function in C?
The following program is used to add 'n' numbers. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include< stdio.h>
int main()
{
int num, sum = 0, count, value;
printf("Enter the number of integers to be added : \n");
scanf("%d", &num);
printf("Enter %d integers\n", num);
for (count = sum; count < = 0 ; count--)
{
scanf("%d", &value);
sum = sum + value;
}
printf("Sum of entered integers = %d\n", sum);
return 0;
}
The following program is used to reverse a string. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdio.h>
#include < stringlength.h>
int main()
{
char str[100], reverse[100];
int strlength, count, d;
printf("Input a string\n");
scanf("%s",str);
strlength = strlen(str);
for (count = strlength - 1, d = 0; count >= 0; count--, d++)
reverse[d] = str[count];
reverse[d] = '\0';
printf("%s\n", reverse);
return 0;
}
Give the output of the following code snippet :
#if(10)
int main()
{
printf("Hello World");
return 0;
}
#else
int main()
{
printf("Hello World :Round two");
}
#endif
Give the output of the following code snippet :
#define FUNC(a,b) (a*b+20);
void main()
{
int a=3,b=10;
int c=FUNC(a,b);
printf("%d %d %d",a,b,c);
}
The following program is used to sort an array of structures. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include< stdio.h>
struct student
{
char name[50];
int studId;
int marks;
};
int main()
{
struct student stud[10],temp;
int i, num;
printf("Enter number of students : \n");
scanf("%d", &num);
printf("Enter information of students:\n");
for (i = 0; i< num; ++i)
{
printf("Enter student ID: ");
scanf("%d", &stud[i].studId);
printf("Enter name: ");
scanf("%s", stud[i].name);
printf("Enter marks: ");
scanf("%d", &stud[i].marks);
printf("\n");
}
for (i = 0; i < num; i++)
for (int j = 0; j < i; j++)
if (student[i].studId < student[j].studId)
{
temp = stud[i];
stud[i] = stud[j];
stud[j] = temp;
}
printf("Student Information :\n\n");
for (i = 0; i< num; ++i)
{
printf("\nStudent ID %d:\n",stud[i].studId);
printf("Name: %s", stud[i].name);
printf("Marks: %d", stud[i].marks);
}
return 0;
}
The following program is used to find the GCD and LCM of two numbers. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int a, b, x, y, temp, gcd, lcm;
printf("Enter two values : \n");
scanf("%d%d", &x, &y);
a = x;
b = y;
while (b != 0)
{
temp = b;
b = a % b;
a = temp;
}
gcd = a;
printf("Greatest common divisor of %d and %d = %d\n", x, y, gcd);
printf("Least common multiple of %d and %d = %d\n", x, y, lcm);
return 0;
}
The following program is used to check if the given number is a prime number or not. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include< stdio.h>
int main()
{
int value, i, flag = 0;
printf("Enter a positive value: ");
scanf("%d", &value);
for (i = 2; i < = value / 2; ++i)
{
if (value % i == 0)
{
flag = 1;
break;
}
}
if (flag == 0)
printf("%d is a prime number", value);
else
printf("%d is not a prime number", value);
return 0;
}
What are the restrictions places on the names of variables and constants in C?
The following program is used to find the substring in a string without using string function. Which of the following statement(s) given in the choices should reordered to make the program compile, link and run and give the desired output?
int main()
{
char str[100], sub[100];
int position, length, count = 0;
printf("Input a string : \n");
scanf("%s",str);
printf("Enter the position and length of substring\n");
scanf("%d%d", &position, &length);
while (count < length)
{
count++;
}
sub[count] = '\0';
sub[count] = str[position + count - 1];
printf("Required substring is %s\n", sub);
return 0;
}
Give the output of the following C code snippet :
void main()
{
printf(" Make hay \n");
printf("While the sun shines");
}
The following program is used to sort an array of values using Bubble sort technique. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
void bubble_sort(int arry[], int n);
int main()
{
int array[100], n, c;
printf("Enter number of elements\n");
scanf("%d", &n);
printf("Enter %d integers\n", n);
for (c = 0; c < n; c++)
scanf("%d", &array[c]);
bubble_sort(array, n);
printf("Sorted array in ascending order:\n");
for (c = 0; c < n; c++)
printf("%d\n", array[c]);
return 0;
}
void bubble_sort(int arry[], int n)
{
int c, d, temp;
for (c = 0; c < (n - 1); c++)
{
for (d = 0; d < n - c - 1; d++)
{
if (arry[d] == arry[d + 1])
{
temp = arry[d];
arry[d] = arry[d + 1];
arry[d + 1] = temp;
}
}
}
}
Give the output of the following code :
#define Message "Hello World"
int main()
{
printf("%d\n",Message);
return 0;
}
Give the output of the following code snippet :
# define max
void Test()
{
printf("Hello");
}
void main()
{
max;
Test();
}
The following program is used to sort an array of structures. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include< stdio.h>
struct student
{
char name[50];
int studId;
int marks;
};
int main()
{
student stud[10],temp;
int i, num;
printf("Enter number of students : \n");
scanf("%d", &num);
printf("Enter information of students:\n");
for (i = 0; i< num; ++i)
{
printf("Enter student ID: ");
scanf("%d", &stud[i].studId);
printf("Enter name: ");
scanf("%s", stud[i].name);
printf("Enter marks: ");
scanf("%d", &stud[i].marks);
printf("\n");
}
for (i = 0; i < num; i++)
for (int j = 0; j < i; j++)
if (stud[i].studId < stud[j].studId)
{
temp = stud[i];
stud[i] = stud[j];
stud[j] = temp;
}
printf("Student Information :\n\n");
for (i = 0; i< num; ++i)
{
printf("\nStudent ID %d:\n",stud[i].studId);
printf("Name: %s", stud[i].name);
printf("Marks: %d", stud[i].marks);
}
return 0;
}
The following program is used to copy a file. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdlib.h>
int main()
{
char ch;
source = fopen("CopyFile.txt", "r");
if (source == NULL)
{
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
target = fopen("Destination.txt", "w");
if (target == NULL)
{
fclose(source);
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
while ((ch = fgetc(source)) != EOF)
fputc(ch, target);
printf("File copied successfully.\n");
fclose(source);
fclose(target);
return 0;
}
The following program is used to find the maximum value in an array. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include< stdio.h>
int main()
{
int array[100], maximum, size, count, location = 1;
printf("\nEnter the number of elements in array : ");
scanf("%d", &size);
printf("Enter %d integers : ", size);
for (count = 0; count < size; count++)
scanf("\n%d", &array[count]);
maximum = array[0];
for (count = 1; count < size; count++)
{
if (array[count] > maximum)
{
size = array[count];
location = count + 1;
}
}
printf("Maximum element is present at location %d and its value is %d.\n", location, maximum);
return 0;
}
The following program is used to execute a command in the OS. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include< stdio.h>
#include< stdlib.h>
int main()
{
int files;
printf("Executing command : 'DIR'\n");
files = systems("dir");
printf("Returned value is: %d.\n", files);
return 0;
}
The following program is used to merge the contents of two files. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdlib.h>
int main()
{
FILE *fs1, *fs2, *ft;
char ch;
fs1 = fopen("File1.txt", "r");
fs2 = fopen("File2.txt", "r");
if (fs1 == NULL || fs2 == NULL)
{
perror("Error ");
exit(EXIT_FAILURE);
}
ft = fopen("Final.txt", "w");
if (ft == NULL)
{
perror("Error ");
exit(EXIT_FAILURE);
}
while ((ch = fgetc(fs1)) == EOF)
fputc(ch, ft);
while ((ch = fgetc(fs2)) != EOF)
fputc(ch, ft);
printf("Two files have been merged successfully");
fclose(fs1);
fclose(fs2);
fclose(ft);
return 0;
}
The following program is used to concatenate two strings without using string function. Which of the following statement(s) given in the choices should be reordered to make the program compile, link and run and give the desired output?
void str_cat(char[], char[]);
int main()
{
char str1[100], str2[100];
printf("Input a string : \n");
scanf("%s", str1);
printf("Input string to concatenate : \n");
scanf("%s", str2);
str_cat(str1, str2);
printf("String obtained on concatenation : %s \n", str1);
return 0;
}
void str_cat(char str1[], char str2[])
{
int count = 0, d = 0;
while (str2[d] != '\0')
{
str1[count] = str2[d];
d++;
count++;
}
while (str1[count] != '\0')
{
count++;
}
str1[count] = '\0';
}
The following program is used to compare two strings without using string function. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
int main()
{
int flag;
char str1[100], str2[100];
printf("Input first string\n");
scanf("%s", str1);
printf("Input second string\n");
scanf("%s", str2);
flag = str_compare(str1, str2);
if (flag == 0)
printf("Entered strings are equal.\n");
else
printf("Entered strings are not equal.\n");
return 0;
}
int str_compare(char a[], char b[])
{
int count = 0;
while (a[count] == b[count])
{
if (a[count] == '\0' || b[count] == '\0')
break;
count++;
}
if (a[count] == '\0' && b[count] == '\0')
return 0;
else
return -1;
}
Give the output of the following code snippet :
void main()
{
int k = 8;
int m = 7;
int z = k < m ? k++ : m++;
printf("%d", z);
}
The following program is used to generate the palindrome of a number. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int value,num, reverse = 0;
printf("Enter a number to reverse : ");
scanf("%d", &value);
num = value;
while (num < = 0)
{
reverse = reverse * 10;
reverse = reverse + num % 10;
num = num / 10;
}
if (value == reverse)
printf(" %d is a Palindrome",value);
else
printf(" %d is not a Palindrome", value);
return 0;
}
Give the output of the following code snippet :
#define X (4+Y)
#define Y (X+3)
int main()
{
printf("%d\n", 4*X+2);
return 0;
}
The following program is used to swap two strings. Which of the following statement(s) given in the choices should be removed to make the program compile, link and run and give the desired output?
int main()
{
char str1[100], str2[100], temp[50];
printf("Enter the str1 string\n");
scanf("%s", str1);
printf("Enter the str2 string\n");
scanf("%s", str2);
printf("\nBefore Swapping\n");
printf("First string: %s\n", str1);
printf("Second string: %s\n\n", str2);
strcpy(temp, str1);
strcpy(str1, str2);
strcpy(str2, str1);
strcpy(str2, temp);
printf("After Swapping\n");
printf("First string: %s\n", str1);
printf("Second string: %s\n", str2);
return 0;
}
Which of the following is a valid variable initialization :
The following program is used to find the maximum value in an array. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include< stdio.h>
int main()
{
int array[100], maximum, size, count, location = 1;
printf("\nEnter the number of elements in array : ");
scanf("%d", &size);
printf("Enter %d integers : ", size);
for (count = 0; count < size; count++)
scanf("\n%d", &array[count]);
maximum = array[0];
for (count = n; count < size/2; count++)
{
if (array[count] > maximum)
{
maximum = array[count];
location = count + 1;
}
}
printf("Maximum element is present at location %d and its value is %d.\n", location, maximum);
return 0;
}
The following program is used to find length of a string without using string function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
int string_length(char[]);
int main()
{
char str;
int length;
printf("Input a string\n");
scanf("%s", str);
length = string_length(str);
printf("Length of string %s = %d\n", str, length);
return 0;
}
int string_length(char s[])
{
int count = 0;
while (s[count] != '\0')
count++;
return count;
}
Which of the following statements is true about EOF in C?
Expressions connected by logical operators && and || are evaluated from
The following program is used to delete an element from an array. Which of the following statement(s) given in the choices should be removed to make the program compile, link and run and give the desired output?
#include< stdio.h>
int main()
{
int array[100], position, count, n;
printf("Enter number of elements in array : \n");
scanf("%d", &n);
printf("Enter %d elements : \n", n);
for (count = 0; count < n; count++)
scanf("%d", &array[count]);
printf("Enter the location where you wish to delete element : \n");
scanf("%d", &position);
if (position >= n + 1)
printf("Deletion not possible.\n");
else
{
for (count = position - 1; count < n - 1; count++)
{
array[count] = array[count + 1];
array[count + 1] = array[count -1];
}
printf("Resultant array : ");
for (count = 0; count < n - 1; count++)
printf("%d\n", array[count]);
}
return 0;
}
What is the value obtained when the sizeof operator is applied to a structure?
Give the output of the following code snippet :
#define CUBE(p)(p*p*p);
void main()
{
int a=3,b=10,c=5;
int x=CUBE(a);
int y=CUBE(b+c);
printf("%d %d",x,y);
}
The following program is used to merge two arrays into a single array. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
void MergeArrays (int[], int, int[], int, int[]);
int main()
{
int arry1[100], arry2[100], num1, num2, c, result[200];
printf("Input number of elements in first array\n");
scanf("%d", &num1);
printf("Input %d integers\n", num1);
for (c = 0; c < num1; c++)
{
scanf("%d", &arry1[c]);
}
printf("Input number of elements in second array\n");
scanf("%d", &num2);
printf("Input %d integers\n", num2);
for (c = 0; c < num2; c++)
{
scanf("%d", &arry2[c]);
}
MergeArrays(arry1, num1, arry2, num2, result);
printf("Result array:\n");
for (c = 0; c < num1 + num2; c++)
{
printf("%d\n", result[c]);
}
return 0;
}
void MergeArrays (int arry1[], int num1, int arry2[], int num2, int result[])
{
int i, j, k;
j = k = 0;
for (i = 0; i < num1 + num2;)
{
if (j < num1 && k < num2)
{
if (arry1[j] < arry2[k])
{
result[i] = arry1[j];
j++;
}
else
{
result[i] = arry2[k];
k++;
}
i++;
}
else
{
for (; i < num1 + num2;)
{
result[i] = arry1[j];
j++;
i++;
}
}
}
}
The following program is used to compare two strings without using string function. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
int str_compare(char[], char[]);
int main()
{
int flag;
char str1[100], str2[100];
printf("Input first string\n");
scanf("%s", str1);
printf("Input second string\n");
scanf("%s", str2);
flag = str_compare(str1, str2);
if (flag == 0)
printf("Entered strings are equal.\n");
else
printf("Entered strings are not equal.\n");
return 0;
}
int str_compare(char a[], char b[])
{
int count = 0;
{
if (a[count] == '\0' || b[count] == '\0')
break;
count++;
}
if (a[count] == '\0' && b[count] == '\0')
return 0;
else
return -1;
}
The following program is used to print the effective username of the current user when invoked. Which of the following statement(s) given in the choices should be added to make the program compile, link and run and give the desired output?
#include < stdio.h>
#include < stdlib.h>
int main()
{
return 0;
}
Which of the following sequences are not valid in C language?
The following program is used to find the GCD and LCM of two numbers. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int a, b, x, y, temp, gcd, lcm;
printf("Enter two values : \n");
scanf("%d%d", &x, &y);
a = x;
b = y;
while (b != 0)
{
temp = b;
b = a % b;
a = temp;
}
gcd = a;
lcm = (x + y) / gcd;
printf("Greatest common divisor of %d and %d = %d\n", x, y, gcd);
printf("Least common multiple of %d and %d = %d\n", x, y, lcm);
return 0;
}
The following program is used to find the GCD and LCM of two numbers. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int a, b, x, y, temp, gcd, lcm;
printf("Enter two values : \n");
scanf("%d%d", &x, &y);
a = x;
b = y;
if (b != 0)
{
temp = b;
b = a % b;
a = temp;
}
gcd = a;
lcm = (x*y) / gcd;
printf("Greatest common divisor of %d and %d = %d\n", x, y, gcd);
printf("Least common multiple of %d and %d = %d\n", x, y, lcm);
return 0;
}
Shifting a value x two positions to the left i.e x << 2 is equivalent to :
Which of the following are examples of derived data types?
The following program is used to generate the palindrome of a number. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int value,num, reverse = 0;
printf("Enter a number to reverse : ");
scanf("%d", &value);
while (num != 0)
{
reverse = reverse * 10;
reverse = reverse + num % 10;
num = num / 10;
}
if (value == reverse)
printf(" %d is a Palindrome",value);
else
printf(" %d is not a Palindrome", value);
return 0;
}
The following program is used to delete an element from an array. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include< stdio.h>
int main()
{
int array[100], position, count, n;
printf("Enter number of elements in array : \n");
scanf("%d", &n);
printf("Enter %d elements : \n", n);
for (count = 0; count < n; count++)
scanf("%d", &array[count]);
printf("Enter the location where you wish to delete element : \n");
scanf("%d", &position);
if (position >= n + 1)
printf("Deletion not possible.\n");
else
{
for (count = position - 1; count < n - 1; count++)
array[count] = array[count + 1];
printf("Resultant array : ");
for (count = 0; count < n - 1; count++)
printf("%d\n", array[count]);
}
return 0;
}
Give the output of the following code snippet :
void main()
{
#define max 37
printf("%d", max);
}
The following program is used to add two distances ( inch to feet ) using structures. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
structure Distance
{
int feet;
float inch;
};
struct Distance dist1, dist2, sum;
void main()
{
printf("Enter information for 1st distance\n");
printf("Enter feet: ");
scanf("%d", &dist1.feet);
printf("Enter inch: ");
scanf("%f", &dist1.inch);
printf("\nEnter information for 2nd distance\n");
printf("Enter feet: ");
scanf("%d", &dist2.feet);
printf("Enter inch: ");
scanf("%f", &dist2.inch);
sum.feet = dist1.feet + dist2.feet;
sum.inch = dist1.inch + dist2.inch;
if (sum.inch>12.0)
{
sum.inch = sum.inch - 12.0;
++sum.feet;
}
printf("\nSum of distances=%d\'-%.1f\"", sum.feet, sum.inch);
}
The following program is used to add two complex numbers by passing structure to a function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
struct complex
{
float real;
float imag;
};
struct complex Add(struct complex n1, struct complex n2);
int main()
{
struct complex n1, n2, temp;
printf("For first complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n1.real);
printf("Enter imaginary part :\n");
scanf("%f", &n1.imag);
printf("For second complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n2.real);
printf("Enter imaginary part :\n");
scanf("%f", &n2.imag);
temp = Add(n1, n2);
printf("Sum=%.1f+%.1fi", temp.real, temp.imag);
return 0;
}
struct complex Add(struct complex n1, struct complex n2)
{
struct complex temp;
temp= n1.real + n2.real;
temp= n1.imag + n2.imag;
return(temp);
}
The following program is used to sort an array of structures. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include< stdio.h>
struct student
{
char name[50];
int studId;
int marks;
};
int main()
{
struct student stud[10],temp;
int i, num;
printf("Enter number of students : \n");
scanf("%d", &num);
printf("Enter information of students:\n");
for (i = 0; i< num; ++i)
{
printf("Enter student ID: ");
scanf("%d", &stud[i].studId);
printf("Enter name: ");
scanf("%s", stud[i].name);
printf("Enter marks: ");
scanf("%d", &stud[i].marks);
printf("\n");
}
for (i = 0; i < num; i++)
for (int j = 0; j < i; j++)
if (stud[i].studId < stud[j].studId)
{
temp = stud;
stud[i] = stud[j];
stud[j] = temp;
}
printf("Student Information :\n\n");
for (i = 0; i< num; ++i)
{
printf("\nStudent ID %d:\n",stud[i].studId);
printf("Name: %s", stud[i].name);
printf("Marks: %d", stud[i].marks);
}
return 0;
}
Which of the following functions are declared in the header file math.h?
What is a Library in C?
Which of the following is possible with any 2 operators in C?
The following program is used to generate the palindrome of a number. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int value,num, reverse = 0;
printf("Enter a number to reverse : ");
scanf("%d", &value);
num = value;
if (num != 0)
{
reverse = reverse * 10;
reverse = reverse + num % 10;
num = num / 10;
}
if (value == reverse)
printf(" %d is a Palindrome",value);
else
printf(" %d is not a Palindrome", value);
return 0;
}
Give the output of the following code snippet :
#define Cprog 100
int main()
{
int a = 2;
#ifdef Cprog
a = 1;
printf("%d",Cprog);
}
The following program is used to check if the given number is odd or even. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int value;
printf("Enter the value to be checked : ");
scanf("%d", &value);
if ((value % 2) == -1)
printf("%d is even", value);
else
printf("%d is odd ", value);
return 0;
}
The following program is used to add two distances ( inch to feet ) using structures. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
struct Distance
{
int feet;
float inch;
};
struct Distance dist1, dist2, sum;
void main()
{
printf("Enter information for 1st distance\n");
printf("Enter feet: ");
scanf("%d", &dist1.feet);
printf("Enter inch: ");
scanf("%f", &dist1.inch);
printf("\nEnter information for 2nd distance\n");
printf("Enter feet: ");
scanf("%d", &dist2.feet);
printf("Enter inch: ");
scanf("%f", &dist2.inch);
sum.feet = dist1.feet + dist2.feet;
sum.inch = dist1.inch + dist2.inch;
{
sum.inch = sum.inch - 12.0;
++sum.feet;
}
printf("\nSum of distances=%d\'-%.1f\"", sum.feet, sum.inch);
}
The following program is used to copy a file. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < lib.h>
int main()
{
char ch;
FILE *source, *target;
source = fopen("CopyFile.txt", "r");
if (source == NULL)
{
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
target = fopen("Destination.txt", "w");
if (target == NULL)
{
fclose(source);
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
while ((ch = fgetc(source)) != EOF)
fputc(ch, target);
printf("File copied successfully.\n");
fclose(source);
fclose(target);
return 0;
}
The group of statements in a C program are enclosed within what type of brackets?
Give the output of the following code snippet :
#define FUNC(x,y,z) x##y##z
void main()
{
int val=100;
int val12=200;
int val1val2=300;
printf("%d",FUNC(val1,val,2));
}
Which of the following is the general declaration of the minprintf() function?
The following program is used to find the factorial of a number. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int n, count;
int fact = 1;
printf("Enter a value: ");
scanf("%d", &n);
if (n< 0)
printf("Factorial of negative number does not exist");
else
{
for (count = 1; count < = n; ++count)
{
fact = fact * count;
}
printf("Factorial of %d is %d ",n,fact);
}
return 0;
}
The following program is used to concatenate two strings without using string function. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
void str_cat(char[], char[]);
int main()
{
char str1[100], str2[100];
printf("Input a string : \n");
scanf("%s", str1);
printf("Input string to concatenate : \n");
scanf("%s", str2);
str_cat(str1, str2);
printf("String obtained on concatenation : %s \n", str1);
return 0;
}
void str_cat(char str1[], char str2[])
{
int count = 0, d = 0;
while (str1[count] != '\0')
{
count++;
}
while (str2[d] != '\0')
{
str1[count] = str2[d];
d++;
count++;
}
}
The following program is used to merge two arrays into a single array. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
void MergeArrays (int[], int, int[], int, int[]);
int main()
{
int arry1[100], arry2[100], num1, num2, c, result[200];
printf("Input number of elements in first array\n");
scanf("%d", &num1);
printf("Input %d integers\n", num1);
for (c = 0; c < num1; c++)
{
scanf("%d", &arry1[c]);
}
printf("Input number of elements in second array\n");
scanf("%d", &num2);
printf("Input %d integers\n", num2);
for (c = 0; c < num2; c++)
{
scanf("%d", &arry2[c]);
}
MergeArrays(arry1, num1, arry2, num2, result);
printf("Result array:\n");
for (c = 0; c < num1 + num2; c++)
{
printf("%d\n", result[c]);
}
return 0;
}
void MergeArrays (int arry1[], int num1, int arry2[], int num2, int result[])
{
int i, j, k;
j = k = 0;
for (i = 0; i < num1 + num2;)
{
if (j < num1 && k < num2)
{
if (arry1[j] != arry2[k])
{
result[i] = arry1[j];
j++;
}
else
{
result[i] = arry2[k];
k++;
}
i++;
}
else if (j == num1)
{
for (; i < num1 + num2;)
{
result[i] = arry2[k];
k++;
i++;
}
}
else
{
for (; i < num1 + num2;)
{
result[i] = arry1[j];
j++;
i++;
}
}
}
}
The following program is used to sort an array of structures. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include< stdio.h>
struct student
{
char name[50];
int studId;
int marks;
};
int main()
{
struct student stud[10],temp;
int i, num;
printf("Enter number of students : \n");
scanf("%d", &num);
printf("Enter information of students:\n");
for (i = 0; i< num; ++i)
{
printf("Enter student ID: ");
scanf("%d", &stud[i].studId);
printf("Enter name: ");
scanf("%s", stud[i].name);
printf("Enter marks: ");
scanf("%d", &stud[i].marks);
printf("\n");
}
for (i = 0; i < num; i++)
for (int j = 0; j < i; j++)
if (stud[i].studId < stud[j].studId)
{
temp = stud[i];
}
printf("Student Information :\n\n");
for (i = 0; i< num; ++i)
{
printf("\nStudent ID %d:\n",stud[i].studId);
printf("Name: %s", stud[i].name);
printf("Marks: %d", stud[i].marks);
}
return 0;
}
Give the output of the following code snippet :
#define PI 3.14
int main()
{
float r=3,area;
area = 3 * r * PI;
printf("%f",area);
return 0;
}
Consider the following code snippet :
void main()
{
int c=10;
printf("%d",c);
}
Give the value of c before the line 'int c=10' gets executed.
The following program is used to find the GCD and LCM of two numbers. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int a, b, x, y, temp, gcd, lcm;
printf("Enter two values : \n");
scanf("%d%d", &x, &y);
a = x % y;
b = y;
while (b != 0)
{
temp = b;
b = a % b;
a = temp;
}
gcd = a;
lcm = (x*y) / gcd;
printf("Greatest common divisor of %d and %d = %d\n", x, y, gcd);
printf("Least common multiple of %d and %d = %d\n", x, y, lcm);
return 0;
}
What are the uses of libraries in C?
Give the output of the following code snippet :
#define VAR 100
void func();
void main()
{
int a=100;
#define VAR 200
func();
printf("%d ",VAR+a);
}
void func()
{
printf("%d ",VAR);
}
Give the output of the following code snippet :
#define ABC 5
#define PQR "Hello World"
int main()
{
#ifdef ABC
printf("%d",ABC * ABC);
#else
printf("%s",PQR);
#endif
return 0;
}
Give the output of the following code snippet :
int func();
extern float a;
void main()
{
int a=func();
printf("%d",a);
}
float a=100.50;
int func()
{
return a;
}
The following program is used to swap two values. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int value1, value2, temp;
printf("\nEnter the value of value1 : ");
scanf("%d", &value1);
printf("\nEnter the value of value2 : ");
scanf("%d", &value2);
printf("Before Swapping\nvalue1 = %d\nvalue2 = %d\n", value1, value2);
temp = value1;
value1 = value2;
value2 = value1 + value2;
printf("After Swapping\nvalue1 = %d\nvalue2 = %d\n", value1, value2);
return 0;
}
Give the output of the following code snippet :
int x=10;
void main()
{
{
int x=20;
x+=10;
printf("%d ",x);
}
x=x+10;
printf("%d",x);
}
The following program is used to generate the fibonacci series. Which of the following statement(s) given in the choices should be reordered to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int count, n, num1 = 0, num2 = 1, result = 0;
printf("Enter number of terms: ");
scanf("%d", &n);
printf("Fibonacci Series:\n %d %d ", num1, num2);
count = 2;
while (count< n)
{
result = num1 + num2;
++count;
printf("%d ", result);
}
num1 = num2;
num2 = result;
return 0;
}
The following program is used to find length of a string without using string function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
void string_length(char[]);
int main()
{
char str[100];
int length;
printf("Input a string\n");
scanf("%s", str);
length = string_length(str);
printf("Length of string %s = %d\n", str, length);
return 0;
}
int string_length(char s[])
{
int count = 0;
while (s[count] != '\0')
count++;
return count;
}
The following program is used to copy a file. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdlib.h>
int main()
{
char ch;
FILE *source, *target;
source = fopen("CopyFile.txt", "r");
if (source == NULL)
{
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
target = fopen(source);
if (target == NULL)
{
fclose(source);
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
while ((ch = fgetc(source)) != EOF)
fputc(ch, target);
printf("File copied successfully.\n");
fclose(source);
fclose(target);
return 0;
}
The following program is used to compare two strings without using string function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
int str_compare(char[], char[]);
int main()
{
int flag;
char str1[100], str2[100];
printf("Input first string\n");
scanf("%s", str1);
printf("Input second string\n");
scanf("%s", str2);
flag = str_compare(str1, str2);
if (flag == 0)
printf("Entered strings are equal.\n");
else
printf("Entered strings are not equal.\n");
return 0;
}
int str_compare(char a[], char b[])
{
int count = 0;
while (a[count] == b[count])
{
while (a[count] == '\0' || b[count] == '\0')
continue;
count++;
}
if (a[count] == '\0' && b[count] == '\0')
return 0;
else
return -1;
}
The following program is used to swap two strings. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
int main()
{
char str1[100], str2[100], temp[50];
printf("Enter the str1 string\n");
scanf("%s", str1);
printf("Enter the str2 string\n");
scanf("%s", str2);
printf("\nBefore Swapping\n");
printf("First string: %s\n", str1);
printf("Second string: %s\n\n", str2);
strcpy(temp, str1);
strcpy(str1, str2);
printf("After Swapping\n");
printf("First string: %s\n", str1);
printf("Second string: %s\n", str2);
return 0;
}
The following program is used to merge two arrays into a single array. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
void MergeArrays (int[], int, int[], int, int[]);
int main()
{
int arry1[100], arry2[100], num1, num2, c, result[200];
printf("Input number of elements in first array\n");
scanf("%d", &num1);
printf("Input %d integers\n", num1);
for (c = 0; c < num1; c++)
{
scanf("%d", &arry1[c]);
}
printf("Input number of elements in second array\n");
scanf("%d", &num2);
printf("Input %d integers\n", num2);
for (c = 0; c < num2; c++)
{
scanf("%d", &arry2[c]);
}
MergeArrays(arry1, num1, arry2, num2, result);
printf("Result array:\n");
for (c = 0; c < num1 + num2; c++)
{
printf("%d\n", result[c]);
}
return 0;
}
void MergeArrays (int arry1[], int num1, int arry2[], int num2, int result[])
{
int i, j, k;
j = k = 0;
for (i = 0; i < num1 - num2; i++)
{
if (j < num1 && k < num2)
{
if (arry1[j] < arry2[k])
{
result[i] = arry1[j];
j++;
}
else
{
result[i] = arry2[k];
k++;
}
i++;
}
else if (j == num1)
{
for (; i < num1 + num2;)
{
result[i] = arry2[k];
k++;
i++;
}
}
else
{
for (; i < num1 + num2;)
{
result[i] = arry1[j];
j++;
i++;
}
}
}
}
The following program is used to add two complex numbers by passing structure to a function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
struct complex
{
float real;
float imag;
};
struct complex Add(complex n1, complex n2);
int main()
{
struct complex n1, n2, temp;
printf("For first complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n1.real);
printf("Enter imaginary part :\n");
scanf("%f", &n1.imag);
printf("For second complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n2.real);
printf("Enter imaginary part :\n");
scanf("%f", &n2.imag);
temp = Add(n1, n2);
printf("Sum=%.1f+%.1fi", temp.real, temp.imag);
return 0;
}
struct complex Add(struct complex n1, struct complex n2)
{
struct complex temp;
temp.real = n1.real + n2.real;
temp.imag = n1.imag + n2.imag;
return(temp);
}
Give the output of the following code snippet :
int main()
{
int x = 2, y = 0;
int z = y && (y != 10);
printf("%d\n", z);
return 0;
}
The following program is used to find the factorial of a number. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int n, count;
int fact = 1;
printf("Enter a value: ");
scanf("%d", &n);
if (n< 0)
printf("Factorial of negative number does not exist");
else
{
printf("Factorial of %d is %d ",n,fact);
}
return 0;
}
Give the output of the following code snippet :
#define Hello
int main()
{
#ifdef Hello
printf("Hello\t");
#undef Hello
#endif
#ifdef Hello
printf("World\t");
#endif
}
A user defined header file is generally specified using :
The following program is used to merge the contents of two files. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdlib.h>
int main()
{
FILE *fs1, *fs2, *ft;
char ch;
fs1 = fopen("File1.txt", "r");
if (fs1 == NULL || fs2 == NULL)
{
perror("Error ");
exit(EXIT_FAILURE);
}
ft = fopen("Final.txt", "w");
if (ft == NULL)
{
perror("Error ");
exit(EXIT_FAILURE);
}
while ((ch = fgetc(fs1)) != EOF)
fputc(ch, ft);
while ((ch = fgetc(fs2)) != EOF)
fputc(ch, ft);
printf("Two files have been merged successfully");
fclose(fs1);
fclose(fs2);
fclose(ft);
return 0;
}
The following program is used to add 'n' numbers. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include< stdio.h>
int main()
{
int num, sum = 1, count, value;
printf("Enter the number of integers to be added : \n");
scanf("%d", &num);
printf("Enter %d integers\n", num);
for (count = 1; count < = num; count++)
{
scanf("%d", &value);
sum = sum / value;
}
printf("Sum of entered integers = %d\n", sum);
return 0;
}
The following program is used to add 'n' numbers. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include< stdio.h>
int main()
{
int num, sum = 0, count, value;
printf("Enter the number of integers to be added : \n");
scanf("%d", &num);
printf("Enter %d integers\n", num);
for (count = 1; count < = num; count++)
{
sum = sum + value;
}
printf("Sum of entered integers = %d\n", sum);
return 0;
}
Give the output of the following code snippet :
void main()
{
int x=1;
int i=0;
int n2=printf("%d\n",++x);
for(i=0; i< n2; i++)
{
printf("Hello");
}
}
Give the output of the following code snippet :
#define FUNC(x) while(i!=0) \
{\
i--;\
printf("%d ",x);\
}
int main()
{
int z=10,i=2;
FUNC(z);
}
The following program is used to add 'n' numbers. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include< stdio.h>
int main()
{
int num, sum, count, value;
printf("Enter the number of integers to be added : \n");
scanf("%d", &num);
printf("Enter %d integers\n", num);
for (count = 1; count < = num; count++)
{
scanf("%d", &value);
sum = sum + value;
}
printf("Sum of entered integers = %d\n", sum);
return 0;
}
Give the output of the following code snippet :
int x=10;
void func()
{
int x=100;
printf("%d ",x);
}
void main()
{
x+=10;
func();
printf("%d ",x);
}
The following program is used to sort an array of structures. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include< stdio.h>
struct student
{
char name[50];
int studId;
int marks;
};
int main()
{
struct student stud[10],temp;
int i, num;
printf("Enter number of students : \n");
scanf("%d", &num);
printf("Enter information of students:\n");
for (i = 0; i< num; ++i)
{
printf("Enter student ID: ");
scanf("%d", &stud[i].studId);
printf("Enter name: ");
scanf("%s", stud[i].name);
printf("Enter marks: ");
scanf("%d", &stud[i].marks);
printf("\n");
}
for (i = 0; i < num; i++)
for (int j = 0; j < i; j++)
if (stud[i].studId < stud[j].studId)
{
temp = stud[i];
temp = stud[j];
stud[j] = temp;
}
printf("Student Information :\n\n");
for (i = 0; i< num; ++i)
{
printf("\nStudent ID %d:\n",stud[i].studId);
printf("Name: %s", stud[i].name);
printf("Marks: %d", stud[i].marks);
}
return 0;
}
The following program is used to add two complex numbers by passing structure to a function. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
struct complex
{
float real;
float imag;
};
struct complex Add(struct complex n1, struct complex n2);
int main()
{
struct complex n1, n2, temp;
printf("For first complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n1.real);
printf("Enter imaginary part :\n");
scanf("%f", &n1.imag);
printf("For second complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n2.real);
printf("Enter imaginary part :\n");
scanf("%f", &n2.imag);
printf("Sum=%.1f+%.1fi", temp.real, temp.imag);
return 0;
}
struct complex Add(struct complex n1, struct complex n2)
{
struct complex temp;
temp.real = n1.real + n2.real;
temp.imag = n1.imag + n2.imag;
return(temp);
}
The function to generate a sequence of pseudo-random integers is defined in which header file?
The following program is used to swap two strings. Which of the following statement(s) given in the choices should be reordered to make the program compile, link and run and give the desired output?
int main()
{
char str1[100], str2[100], temp[50];
printf("Enter the str1 string\n");
scanf("%s", str1);
printf("Enter the str2 string\n");
scanf("%s", str2);
printf("\nBefore Swapping\n");
printf("First string: %s\n", str1);
printf("Second string: %s\n\n", str2);
strcpy(str1, str2);
strcpy(str2, temp);
strcpy(temp, str1);
printf("After Swapping\n");
printf("First string: %s\n", str1);
printf("Second string: %s\n", str2);
return 0;
}
What is the return type of rand() function?
What is the default return-type of function putchar()?
The following program is used to reverse a string. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdio.h>
#include < string.h>
int main()
{
char str[100], reverse[100];
int strlength, count, d;
printf("Input a string\n");
scanf("%s",str);
strlength = strlen(str);
for (count = strlength - 1, d = 0; count >= 0; count--, d++)
reverse[d] = '\0';
printf("%s\n", reverse);
return 0;
}
The following program is used to reverse a string. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdio.h>
#include < string.h>
int main()
{
char str[100], reverse[100];
int strlength, count, d;
printf("Input a string\n");
scanf("%s",str);
strlength = strlen(str);
for (count = strlength - 1, d = 0; count == 0; count++, d++)
reverse[d] = str[count];
reverse[d] = '\0';
printf("%s\n", reverse);
return 0;
}
Give the output of the following code :
void main()
{
char c='a';
printf("Initial value = %c", c);
scanf("%d",&c);
printf("New value=%d",c);
}
Assume that the input given is c='12'. Give the final value of c :
Give the output of the following code snippet :
void fun()
{
printf("%d\n", test(-3, 3));
}
int main()
{
#define test(x, y) x / y + x
fun();
}
Give the output of the following code snippet :
#define PRINT(int) printf("Val=%d ", int);
int main()
{
int a=2, b=3;
PRINT(a);
PRINT(b);
return 0;
}
Which of the following are not unary operators in C?
Give the output of the following code snippet :
void main()
{
int a = 2 + 3 - 4 + 8 - 5 % 4;
printf("%d\n", a);
}
Which of the following statements are not true about macros in C?
The following program is used to sort an array of values using Bubble sort technique. Which of the following statement(s) given in the choices should be removed to make the program compile, link and run and give the desired output?
void bubble_sort(int arry[], int n);
int main()
{
int array[100], n, c;
printf("Enter number of elements\n");
scanf("%d", &n);
printf("Enter %d integers\n", n);
for (c = 0; c < n; c++)
scanf("%d", &array[c]);
bubble_sort(array, n);
printf("Sorted array in ascending order:\n");
for (c = 0; c < n; c++)
printf("%d\n", array[c]);
return 0;
}
void bubble_sort(int arry[], int n)
{
int c, d, temp;
for (c = 0; c < (n - 1); c++)
{
for (d = 0; d < n - c - 1; d++)
{
if (arry[d] > arry[d + 1])
{
temp = arry[d];
arry[d] = arry[d + 1];
arry[d + 1] = temp;
break;
}
}
}
}
The following program is used to generate the fibonacci series. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int count, n, num1 = 0, num2 = 1, result = 0;
printf("Enter number of terms: ");
scanf("%d", &n);
printf("Fibonacci Series:\n %d %d ", num1, num2);
count = 2;
if (count == n)
{
result = num1 + num2;
num1 = num2;
num2 = result;
++count;
printf("%d ", result);
}
return 0;
}
Give the output of the following code snippet :
#define MIN 10
#ifdef MIN
#define MAX 20
#endif
int main()
{
printf("%d %d\n", MAX, MIN);
return 0;
}
Which preprocessor operator allows to convert any argument in a macro function to a string?
The following program is used to copy a file. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdlib.h>
int main()
{
char ch;
FILE *source, *target;
if (source == NULL)
{
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
target = fopen("Destination.txt", "w");
if (target == NULL)
{
fclose(source);
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
while ((ch = fgetc(source)) != EOF)
fputc(ch, target);
printf("File copied successfully.\n");
fclose(source);
fclose(target);
return 0;
}
The following program is used to merge the contents of two files. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdlib.h>
int main()
{
FILE *fs1, *fs2, *ft;
char ch;
fs1 = fopen("File1.txt", "r");
fs2 = fopen("File2.txt", "r");
if (fs1 == NULL || fs2 == NULL)
{
perror("Error ");
exit(EXIT_FAILURE);
}
ft = fopen("Final.txt", "w");
if (ft == NULL)
{
perror("Error ");
exit(EXIT_FAILURE);
}
if ((ch = fgetc(fs1)) != EOF)
fputc(ch, ft);
while ((ch = fgetc(fs2)) != EOF)
fputc(ch, ft);
printf("Two files have been merged successfully");
fclose(fs1);
fclose(fs2);
fclose(ft);
return 0;
}
The following program is used to add two complex numbers by passing structure to a function. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
{
float real;
float imag;
};
struct complex Add(struct complex n1, struct complex n2);
int main()
{
struct complex n1, n2, temp;
printf("For first complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n1.real);
printf("Enter imaginary part :\n");
scanf("%f", &n1.imag);
printf("For second complex number : \n");
printf("Enter real part :\n");
scanf("%f", &n2.real);
printf("Enter imaginary part :\n");
scanf("%f", &n2.imag);
temp = Add(n1, n2);
printf("Sum=%.1f+%.1fi", temp.real, temp.imag);
return 0;
}
struct complex Add(struct complex n1, struct complex n2)
{
struct complex temp;
temp.real = n1.real + n2.real;
temp.imag = n1.imag + n2.imag;
return(temp);
}
The following program is used to compare two strings without using string function. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
int str_compare(char[], char[]);
int main()
{
int flag;
char str1[100], str2[100];
printf("Input first string\n");
scanf("%s", str1);
printf("Input second string\n");
scanf("%s", str2);
if (flag == 0)
printf("Entered strings are equal.\n");
else
printf("Entered strings are not equal.\n");
return 0;
}
int str_compare(char a[], char b[])
{
int count = 0;
while (a[count] == b[count])
{
if (a[count] == '\0' || b[count] == '\0')
break;
count++;
}
if (a[count] == '\0' && b[count] == '\0')
return 0;
else
return -1;
}
The following program is used to copy strings without using string function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
void copy_str(char[], char[]);
int main()
{
char str[100], dest[100];
printf("Input a string\n");
scanf("%s",str);
copy_str(dest, str);
printf("Source string: %s\n", str);
printf("Destination string: %s\n", dest);
return 0;
}
void copy_str(char d[], char s[])
{
int count = 0;
while (s[count] != '\0')
{
d[count] = s[count];
count++;
}
d[count] = s[count++];
}
What is the meant by ‘a’ in the following operation?
fp = fopen(“New.txt”, “a”);
The following program is used to concatenate two strings without using string function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
str_cat(char[], char[]);
int main()
{
char str1[100], str2[100];
printf("Input a string : \n");
scanf("%s", str1);
printf("Input string to concatenate : \n");
scanf("%s", str2);
str_cat(str1, str2);
printf("String obtained on concatenation : %s \n", str1);
return 0;
}
void str_cat(char str1[], char str2[])
{
int count = 0, d = 0;
while (str1[count] != '\0')
{
count++;
}
while (str2[d] != '\0')
{
str1[count] = str2[d];
d++;
count++;
}
str1[count] = '\0';
}
Give the output of the following code snippet :
void main()
{
int x = 5.3 % 2;
printf("%d", x);
}
Give the output of the following code snippet :
#define A 4-2
#define B 3-1
int main()
{
int ratio=A/B;
printf("%d ",ratio);
return 0;
}
The following program is used to copy a file. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdlib.h>
int main()
{
char ch;
FILE *source, *target;
source = fopen(target,"r");
if (source == NULL)
{
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
target = fopen("Destination.txt", "w");
if (target == NULL)
{
fclose(source);
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
while ((ch = fgetc(source)) != EOF)
fputc(ch, target);
printf("File copied successfully.\n");
fclose(source);
fclose(target);
return 0;
}
The following program is used to find length of a string without using string function. Which of the following statement(s) given in the choices should be reordered to make the program compile, link and run and give the desired output?
int string_length(char[]);
int main()
{
char str[100];
int length;
printf("Input a string\n");
scanf("%s", str);
length = string_length(str);
printf("Length of string %s = %d\n", str, length);
return 0;
}
int string_length(char s[])
{
int count = 0;
return count;
while (s[count] != '\0')
count++;
}
Give the output of the following code snippet :
void main()
{
#define const float
const float val = 100.25;
printf("%.2f", val);
}
The following program is used to swap two strings. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
int main()
{
char str1[100], str2[100], temp[50];
printf("Enter the str1 string\n");
scanf("%s", str1);
printf("Enter the str2 string\n");
scanf("%s", str2);
printf("\nBefore Swapping\n");
printf("First string: %s\n", str1);
printf("Second string: %s\n\n", str2);
strcpy(str2, temp);
printf("After Swapping\n");
printf("First string: %s\n", str1);
printf("Second string: %s\n", str2);
return 0;
}
Give the importance of header files in C:
Give the output of the following code snippet :
int a;
int main()
{
printf("%d\n",a);
return 0;
}
Give the output of the following code snippet:
#define SQUARE(x) x*x
int main()
{
float t=2,a;
a =SQUARE(t);
printf("Result = %f", a);
return 0;
}
C preprocessor is conceptually the first step during compilation.
Which of the following data types fall under the floating types classification in C?
Which of the following statements is true about minprintf() functions in C :
The function ungetc() may be used with which of the following functions?
While including a header file, if the file name is specified between <>, then where is the file searched?
The following program is used to concatenate two strings without using string function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
void str_cat(char[], char[]);
int main()
{
char str1[100], str2[100];
printf("Input a string : \n");
scanf("%s", str1);
printf("Input string to concatenate : \n");
scanf("%s", str2);
str_cat(str1, str2);
printf("String obtained on concatenation : %s \n", str1);
return 0;
}
void str_cat(char str1[], char str2[])
{
int count = 0, d = 0;
while (str1[count] != '\0')
{
count++;
}
while (str2[count] == '\0')
{
str1[count] = str2[d];
d++;
count++;
}
str1[count] = '\0';
}
Give the output of the following code snippet :
#define START void main() {
#define PRINT printf("Hello World");
#define END }
START
PRINT
END
Give the output of the following code :
int main()
{
const c = -11;
const int d = 34;
printf("%d, %d\n", c, d);
return 0;
}
The following program is used to merge two arrays into a single array. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
void MergeArrays (int[], int, int[], int, int[]);
int main()
{
int arry1[100], arry2[100], num1, num2, c, result[200];
printf("Input number of elements in first array\n");
scanf("%d", &num1);
printf("Input %d integers\n", num1);
for (c = 0; c < num1; c++)
{
scanf("%d", &arry1[c]);
}
printf("Input number of elements in second array\n");
scanf("%d", &num2);
printf("Input %d integers\n", num2);
for (c = 0; c < num2; c++)
{
scanf("%d", &arry2[c]);
}
MergeArrays(arry1, num1, arry2, num2, result);
printf("Result array:\n");
for (c = 0; c < num1 + num2; c++)
{
printf("%d\n", result[c]);
}
return 0;
}
void MergeArrays (int arry1[], int num1, int arry2[], int num2, int result[])
{
int i, j, k;
j = k = 0;
for (i = 0; i < num1 + num2;)
{
if (j < num1 && k < num2)
{
result[i] = arry1[j];
j++;
}
else
{
result[i] = arry2[k];
k++;
}
i++;
}
else if (j == num1)
{
for (; i < num1 + num2;)
{
result[i] = arry2[k];
k++;
i++;
}
}
else
{
for (; i < num1 + num2;)
{
result[i] = arry1[j];
j++;
i++;
}
}
}
}
Give the output of the following code snippet :
#define a 10
#define a 68
int main()
{
printf("%c ",a);
return 0;
}
Give the output of the following code snippet :
#include (stdio.h)
void main()
{
printf("Hello");
}
Name the library function used in C to get the input from the user through the console :
The following program is used to find the factorial of a number. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int n, count;
int fact = 1;
printf("Enter a value: ");
scanf("%d", &n);
if (n< 0)
printf("Factorial of negative number does not exist");
else
{
for (count = n; count < = 0; --count)
{
fact = fact * count;
}
printf("Factorial of %d is %d ",n,fact);
}
return 0;
}
The following program is used to generate the fibonacci series. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int count, n, num1 = 0, num2 = 1, result = 0;
printf("Enter number of terms: ");
scanf("%d", &n);
printf("Fibonacci Series:\n %d %d ", num1, num2);
count = 2;
while (count< n)
{
result = num1 + num2;
num1 = num2;
printf("%d ", result);
}
return 0;
}
The following program is used to copy a file. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdlib.h>
int main()
{
char ch;
FILE *source, *target;
source = fgets("CopyFile.txt", "r");
if (source == NULL)
{
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
target = fopen("Destination.txt", "w");
if (target == NULL)
{
fclose(source);
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
while ((ch = fgetc(source)) != EOF)
fputc(ch, target);
printf("File copied successfully.\n");
fclose(source);
fclose(target);
return 0;
}
The following program is used to find the factorial of a number. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int n, count;
int fact = 1;
printf("Enter a value: ");
scanf("%d", &n);
if (n< 0)
printf("Factorial of negative number does not exist");
else
{
{
fact = fact * count;
}
printf("Factorial of %d is %d ",n,fact);
}
return 0;
}
A leading 0 (zero) on an integer constant is used to denote:
The following program is used to sort an array of structures. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include< stdio.h>
struct
{
char name[50];
int studId;
int marks;
};
int main()
{
struct student stud[10],temp;
int i, num;
printf("Enter number of students : \n");
scanf("%d", &num);
printf("Enter information of students:\n");
for (i = 0; i< num; ++i)
{
printf("Enter student ID: ");
scanf("%d", &stud[i].studId);
printf("Enter name: ");
scanf("%s", stud[i].name);
printf("Enter marks: ");
scanf("%d", &stud[i].marks);
printf("\n");
}
for (i = 0; i < num; i++)
for (int j = 0; j < i; j++)
if (stud[i].studId < stud[j].studId)
{
temp = stud[i];
stud[i] = stud[j];
stud[j] = temp;
}
printf("Student Information :\n\n");
for (i = 0; i< num; ++i)
{
printf("\nStudent ID %d:\n",stud[i].studId);
printf("Name: %s", stud[i].name);
printf("Marks: %d", stud[i].marks);
}
return 0;
}
The following program is used to swap two strings. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
int main()
{
char str1[100], str2[100], temp[50];
printf("Enter the str1 string\n");
scanf("%c", str1);
printf("Enter the str2 string\n");
scanf("%s", str2);
printf("\nBefore Swapping\n");
printf("First string: %s\n", str1);
printf("Second string: %s\n\n", str2);
strcpy(temp, str1);
strcpy(str1, str2);
strcpy(str2, temp);
printf("After Swapping\n");
printf("First string: %s\n", str1);
printf("Second string: %s\n", str2);
return 0;
}
The following program is used to sort an array of structures. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include< stdio.h>
struct student
{
char name[50];
int studId;
int marks;
};
int main()
{
struct student stud[10],temp;
int i, num;
printf("Enter number of students : \n");
scanf("%d", &num);
printf("Enter information of students:\n");
for (i = 0; i< num; ++i)
{
printf("Enter student ID: ");
scanf("%d", &stud.studId);
printf("Enter name: ");
scanf("%s", stud[i].name);
printf("Enter marks: ");
scanf("%d", &stud[i].marks);
printf("\n");
}
for (i = 0; i < num; i++)
for (int j = 0; j < i; j++)
if (stud[i].studId < stud[j].studId)
{
temp = stud[i];
stud[i] = stud[j];
stud[j] = temp;
}
printf("Student Information :\n\n");
for (i = 0; i< num; ++i)
{
printf("\nStudent ID %d:\n",stud[i].studId);
printf("Name: %s", stud[i].name);
printf("Marks: %d", stud[i].marks);
}
return 0;
}
The following program is used to copy a file. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdlib.h>
int main()
{
char ch;
FILE *source, *target;
source = fopen("CopyFile.txt", "r");
if (source == NULL)
{
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
target = fopen(source,"r");
if (target == NULL)
{
fclose(source);
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
while ((ch = fgetc(source)) != EOF)
fputc(ch, target);
printf("File copied successfully.\n");
fclose(source);
fclose(target);
return 0;
}
The following program is used to generate the fibonacci series. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int count, n, num1 = 0, num2 = 1, result = 0;
printf("Enter number of terms: ");
scanf("%d", &n);
printf("Fibonacci Series:\n %d %d ", num1, num2);
count = 2;
while (count< n)
{
result = num1 + num2;
num1 = num2;
num2 = result;
--count;
printf("%d ", result);
}
return 0;
}
The following program is used to copy a file. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdlib.h>
int main()
{
char ch;
FILE *source, *target;
source = fopen("CopyFile.txt", "r");
if (source == NULL)
{
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
target = fopen("Destination.txt", "w");
if (target == NULL)
{
fclose(source);
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
while ((ch = fgetc(source)) != EOF)
fputc(ch, target);
printf("File copied successfully.\n");
return 0;
}
The following program is used to find the GCD and LCM of two numbers. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int a, b, x, y, temp, gcd, lcm;
printf("Enter two values : \n");
scanf("%d%d", &x, &y);
a = x;
b = y;
{
temp = b;
b = a % b;
a = temp;
}
gcd = a;
lcm = (x*y) / gcd;
printf("Greatest common divisor of %d and %d = %d\n", x, y, gcd);
printf("Least common multiple of %d and %d = %d\n", x, y, lcm);
return 0;
}
The following program is used to check if the given number is a prime number or not. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include< stdio.h>
int main()
{
int value, i, flag = 0;
printf("Enter a positive value: ");
scanf("%d", &value);
for (i = 2; i < = value / 2; ++i)
{
if (value == 0)
{
flag = 1;
break;
}
}
if (flag == 0)
printf("%d is a prime number", value);
else
printf("%d is not a prime number", value);
return 0;
}
The following program is used to find the substring in a string without using string function. Which of the following statement(s) given in the choices should corrected to make the program compile, link and run and give the desired output?
int main()
{
char str[100], sub[100];
int position, length, count = 0;
printf("Input a string : \n");
scanf("%s",str);
printf("Enter the position and length of substring\n");
scanf("%d%d", &position, &length);
while (count < length)
{
sub[count] = str[position];
length--;
}
sub[count] = '\0';
printf("Required substring is %s\n", sub);
return 0;
}
The following program is used to compare two strings without using string function. Which of the following statement(s) given in the choices should be reordered to make the program compile, link and run and give the desired output?
int str_compare(char[], char[]);
int main()
{
int flag;
char str1[100], str2[100];
flag = str_compare(str1, str2);
printf("Input first string\n");
scanf("%s", str1);
printf("Input second string\n");
scanf("%s", str2);
if (flag == 0)
printf("Entered strings are equal.\n");
else
printf("Entered strings are not equal.\n");
return 0;
}
int str_compare(char a[], char b[])
{
int count = 0;
while (a[count] == b[count])
{
if (a[count] == '\0' || b[count] == '\0')
break;
count++;
}
if (a[count] == '\0' && b[count] == '\0')
return 0;
else
return -1;
}
Give the output of the following code snippet :
#define SWAP(a,b,c)(c=a,a=b,b=c)
void main()
{
int a=3,b=10,c=5;
SWAP(a,b,c);
printf("%d %d",a,b);
}
The following program is used to concatenate two strings without using string function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
void str_cat(char[], char[]);
int main()
{
char str1[100], str2[100];
printf("Input a string : \n");
scanf("%s", str1);
printf("Input string to concatenate : \n");
scanf("%s", str2);
str_cat(str1, str2);
printf("String obtained on concatenation : %s \n", str1);
return 0;
}
void str_cat(char str1[], char str2[])
{
int count = 0, d = 0;
while (str1[count] != '\0')
{
count++;
}
if (str2[d] == '\0')
{
str1[count] = str2[d];
d++;
count++;
}
str1[count] = '\0';
}
A long constant in C is written with the terminal :
The following program is used to sort an array of structures. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include< stdio.h>
student
{
char name[50];
int studId;
int marks;
};
int main()
{
struct student stud[10],temp;
int i, num;
printf("Enter number of students : \n");
scanf("%d", &num);
printf("Enter information of students:\n");
for (i = 0; i< num; ++i)
{
printf("Enter student ID: ");
scanf("%d", &stud[i].studId);
printf("Enter name: ");
scanf("%s", stud[i].name);
printf("Enter marks: ");
scanf("%d", &stud[i].marks);
printf("\n");
}
for (i = 0; i < num; i++)
for (int j = 0; j < i; j++)
if (stud[i].studId < stud[j].studId)
{
temp = stud[i];
stud[i] = stud[j];
stud[j] = temp;
}
printf("Student Information :\n\n");
for (i = 0; i< num; ++i)
{
printf("\nStudent ID %d:\n",stud[i].studId);
printf("Name: %s", stud[i].name);
printf("Marks: %d", stud[i].marks);
}
return 0;
}
Give the output of the following code :
#define Message "Hello World"
int main()
{
printf("%s\n",Message);
return 0;
}
The following program is used to execute a command in the OS. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include< stdio.h>
#include< stdlib.h>
int main()
{
int files;
printf("Executing command : 'DIR'\n");
files = system("dirctry");
printf("Returned value is: %d.\n", files);
return 0;
}
The conditional directives #if and #ifdef perform the same operations. State true or false.
The following program is used to merge two arrays into a single array. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
void MergeArrays (int[], int, int[], int, int[]);
int main()
{
int arry1[100], arry2[100], num1, num2, c, result[200];
printf("Input number of elements in first array\n");
scanf("%d", &num1);
printf("Input %d integers\n", num1);
for (c = 0; c < num1; c++)
{
scanf("%d", &arry1[c]);
}
printf("Input number of elements in second array\n");
scanf("%d", &num2);
printf("Input %d integers\n", num2);
for (c = 0; c < num2; c++)
{
scanf("%d", &arry2[c]);
}
MergeArrays(arry1, num1, arry2, num2, result);
printf("Result array:\n");
for (c = 0; c < num1 + num2; c++)
{
printf("%d\n", result[c]);
}
return 0;
}
void MergeArrays (int arry1[], int num1, int arry2[], int num2, int result[])
{
int i, j, k;
j = k = 0;
for (i = 0; i < num1 + num2;)
{
if (j < num1 && k < num2)
{
if (arry1[j] == arry2[k])
{
result[i] = arry1[j];
j++;
}
else
{
result[i] = arry2[k];
k++;
}
i++;
}
else if (j == num1)
{
for (; i < num1 + num2;)
{
result[i] = arry2[k];
k++;
i++;
}
}
else
{
for (; i < num1 + num2;)
{
result[i] = arry1[j];
j++;
i++;
}
}
}
}
The following program is used to generate the fibonacci series. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int count, n, num1, num2, result = 0;
printf("Enter number of terms: ");
scanf("%d", &n);
printf("Fibonacci Series:\n %d %d ", num1, num2);
while (count< n)
{
result = num1 + num2;
num1 = num2;
num2 = result;
++count;
printf("%d ", result);
}
return 0;
}
Give the output of the following code snippet :
void main()
{
double x=205.25;
int y=10;
double z;
z=x % y;
printf("%d",z);
}
The following program is used to generate the fibonacci series. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int count, n, num1 = 0, num2 = 1, result = 0;
printf("Enter number of terms: ");
scanf("%d", &n);
printf("Fibonacci Series:\n %d %d ", num1, num2);
count = 2;
while (count< n)
{
result = num1 + num2;
num1 = num2;
num2 = result;
++count;
printf("%d ", result);
}
return 0;
}
The following program is used to copy a file. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
int main()
{
char ch;
FILE *source, *target;
source = fopen("CopyFile.txt", "r");
if (source == NULL)
{
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
target = fopen("Destination.txt", "w");
if (target == NULL)
{
fclose(source);
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
while ((ch = fgetc(source)) != EOF)
fputc(ch, target);
printf("File copied successfully.\n");
fclose(source);
fclose(target);
return 0;
}
The following program is used to merge the contents of two files. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdlib.h>
int main()
{
FILE *fs1, *fs2, *ft;
char ch;
fs1 = fclose("File1.txt", "r");
fs2 = fopen("File2.txt", "r");
if (fs1 == NULL || fs2 == NULL)
{
perror("Error ");
exit(EXIT_FAILURE);
}
ft = fopen("Final.txt", "w");
if (ft == NULL)
{
perror("Error ");
exit(EXIT_FAILURE);
}
while ((ch = fgetc(fs1)) != EOF)
fputc(ch, ft);
while ((ch = fgetc(fs2)) != EOF)
fputc(ch, ft);
printf("Two files have been merged successfully");
fclose(fs1);
fclose(fs2);
fclose(ft);
return 0;
}
Give the output of the following code snippet :
void func(int a)
{
int a=200;
printf("%d",a);
}
void main()
{
func(10);
}
The following program is used to copy a file. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdlib.h>
int main()
{
char ch;
FILE *source, *target;
source = fopen("CopyFile.txt", "r");
if (source == NULL)
{
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
target = fopen("Destination.txt", "w");
if (target == NULL)
{
fclose(source);
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
while ((ch = fopen(source)) != EOF)
fputc(ch, target);
printf("File copied successfully.\n");
fclose(source);
fclose(target);
return 0;
}
The following program is used to display the student details using structures. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
struct student
{
char name[50];
int studId;
int marks;
};
int main()
{
struct student stud[10];
int i, num;
printf("Enter number of students : \n");
scanf("%d",&num);
printf("Enter information of students:\n");
for (i = 0; i< num; ++i)
{
stud[i].studId = i + 1;
printf("\nStudent ID %d\n", stud[i].studId);
printf("Enter name: ");
scanf("%s", stud[i].name);
printf("Enter marks: ");
scanf("%d", &stud[i].marks);
printf("\n");
}
printf("Student Information :\n\n");
for (i = 0; i< num; ++i)
{
printf("\nStudent ID %d:\n", i + 1);
printf("Name: %s", stud[i].name);
printf("Marks: %d", stud[i].marks);
}
return 0;
}
The following program is used to find length of a string without using string function. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
int string_length(char[]);
int main()
{
char str[100];
int length;
printf("Input a string\n");
scanf("%s", str);
length = string_length(str);
printf("Length of string %s = %d\n", str, length);
return 0;
}
int string_length()
{
int count = 0;
while (s[count] != '\0')
count++;
return count;
}
The following program is used to delete an element from an array. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include< stdio.h>
int main()
{
int array[100], position, count, n;
printf("Enter number of elements in array : \n");
scanf("%d", &n);
printf("Enter %d elements : \n", n);
for (count = 0; count < n; count++)
scanf("%d", &array[count]);
printf("Enter the location where you wish to delete element : \n");
scanf("%d", &position);
if (position >= n + 1)
printf("Deletion not possible.\n");
else
{
for (count = position - 1; count > 0; count--)
array[count] = array[count + 1];
printf("Resultant array : ");
for (count = 0; count < n - 1; count++)
printf("%d\n", array[count]);
}
return 0;
}
Which keyword specifies the range of positive and negative values that can be assigned for the character data type?
The following program is used to copy strings without using string function. Which of the following statement(s) given in the choices should be reordered to make the program compile, link and run and give the desired output?
void copy_str(char[], char[]);
int main()
{
char str[100], dest[100];
printf("Input a string\n");
scanf("%s",str);
copy_str(dest, str);
printf("Source string: %s\n", str);
printf("Destination string: %s\n", dest);
return 0;
}
void copy_str(char d[], char s[])
{
int count = 0;
d[count] = s[count];
while (s[count] != '\0')
{
count++;
}
d[count] = '\0';
}
The following program is used to find the GCD and LCM of two numbers. Which of the following statement(s) given in the choices should be added to the program at some point to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int a, b, x, y, temp, gcd, lcm;
printf("Enter two values : \n");
scanf("%d%d", &x, &y);
a = x;
b = y;
while (b != 0)
{
temp = b;
a = temp;
}
gcd = a;
lcm = (x*y) / gcd;
printf("Greatest common divisor of %d and %d = %d\n", x, y, gcd);
printf("Least common multiple of %d and %d = %d\n", x, y, lcm);
return 0;
}
Give the output of the following code snippet :
int x;
float y;
void main()
{
printf("%d %.2f",x,y);
}
The following program is used to copy strings without using string function. Which of the following statement(s) given in the choices should be reordered to make the program compile, link and run and give the desired output?
void copy_str(char[], char[]);
int main()
{
char str[100], dest[100];
printf("Input a string\n");
scanf("%s",str);
copy_str(dest, str);
printf("Source string: %s\n", str);
printf("Destination string: %s\n", dest);
return 0;
}
void copy_str(char d[], char s[])
{
int count = 0;
while (s[count] != '\0')
{
d[count] = s[count];
}
count++;
d[count] = '\0';
}
The following program is used to merge the contents of two files. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdlib.h>
int main()
{
FILE *fs1, *fs2, *ft;
char ch;
fs1 = fopen("File1.txt", "r");
fs2 = fopen("File2.txt", "r");
if (fs1 == NULL || fs2 == NULL)
{
perror("Error ");
exit(EXIT_FAILURE);
}
ft = fopen("Final.txt", "w");
if (ft == NULL)
{
perror("Error ");
exit(EXIT_FAILURE);
}
while ((ch = fgetc(fs1)) != EOF)
fputc(ch, ft);
while ((ch = fopen(ft)) != EOF)
fputc(ch, ft);
printf("Two files have been merged successfully");
fclose(fs1);
fclose(fs2);
fclose(ft);
return 0;
}
If there is any error while opening a file, fopen will return
Give the output of the following code snippet :
void main()
{
int k = sqrt(-4);
printf("%d\n", k);
}
The following program is used to copy strings without using string function. Which of the following statement(s) given in the choices should be removed to make the program compile, link and run and give the desired output?
void copy_str(char[], char[]);
int main()
{
char str[100], dest[100];
printf("Input a string\n");
scanf("%s",str);
copy_str(dest, str);
printf("Source string: %s\n", str);
printf("Destination string: %s\n", dest);
return 0;
}
void copy_str(char d[], char s[])
{
int count = 0;
while (s[count] != '\0')
{
d[count] = s[count];
d[count] = d[count-1];
count++;
}
d[count] = '\0';
}
How is the header file included in the C program?
Give the output of the following code snippet :
# define max
void main()
{
max;
}
The following program is used to merge the contents of two files. Which of the following statement(s) given in the choices should be reordered to make the program compile, link and run and give the desired output?
#include < stdlib.h>
int main()
{
FILE *fs1, *fs2, *ft;
char ch;
fs1 = fopen("File1.txt", "r");
fs2 = fopen("File2.txt", "r");
if (fs1 == NULL || fs2 == NULL)
{
perror("Error ");
exit(EXIT_FAILURE);
}
if (ft == NULL)
{
perror("Error ");
exit(EXIT_FAILURE);
}
while ((ch = fgetc(fs1)) != EOF)
fputc(ch, ft);
while ((ch = fgetc(fs2)) != EOF)
fputc(ch, ft);
ft = fopen("Final.txt", "w");
printf("Two files have been merged successfully");
fclose(fs1);
fclose(fs2);
fclose(ft);
return 0;
}
The following program is used to swap two strings. Which of the following statement(s) given in the choices should be removed to make the program compile, link and run and give the desired output?
int main()
{
char str1[100], str2[100], temp[50];
printf("Enter the str1 string\n");
scanf("%s", str1);
printf("Enter the str2 string\n");
scanf("%s", str2);
strcpy(str2, str1);
printf("\nBefore Swapping\n");
printf("First string: %s\n", str1);
printf("Second string: %s\n\n", str2);
strcpy(temp, str1);
strcpy(str1, str2);
strcpy(str2, temp);
printf("After Swapping\n");
printf("First string: %s\n", str1);
printf("Second string: %s\n", str2);
return 0;
}
What are the qualifiers that can be applied to a character type in C?
Give the output of the following code snippet :
void main()
{
printf("%+07d\n", 762);
}
Which of the following statements is true about the function srand()?
The following program is used to compare two strings without using string function. Which of the following statement(s) given in the choices should be reordered to make the program compile, link and run and give the desired output?
int str_compare(char[], char[]);
int main()
{
int flag;
char str1[100], str2[100];
printf("Input first string\n");
scanf("%s", str1);
printf("Input second string\n");
scanf("%s", str2);
flag = str_compare(str1, str2);
if (flag == 0)
printf("Entered strings are equal.\n");
else
printf("Entered strings are not equal.\n");
return 0;
}
int str_compare(char a[], char b[])
{
int count = 0;
while (a[count] == b[count])
{
if (a[count] == '\0' || b[count] == '\0')
count++;
break;
}
if (a[count] == '\0' && b[count] == '\0')
return 0;
else
return -1;
}
Give the output of the following code snippet :
#define CUBE(x) (x*x*x)
#define M 10
#define N M+1
int main()
{
int volume =CUBE(3+2);
printf("%d %d ",volume,N);
return 0;
}
Give the output of the following code snippet :
void main()
{
int b = 5 + 7 * 4 - 9 * (3-2);
printf("%d", b);
}
A string constant in C is a sequence of zero or more characters within:
The following program is used to add two distances ( inch to feet ) using structures. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
struct Distance
{
int feet;
float inch;
};
struct Distance dist1, dist2, sum;
void main()
{
printf("Enter information for 1st distance\n");
printf("Enter feet: ");
scanf("%d", &dist1.feet);
printf("Enter inch: ");
scanf("%f", &dist1.inch);
printf("\nEnter information for 2nd distance\n");
printf("Enter feet: ");
scanf("%d", &dist2.feet);
printf("Enter inch: ");
scanf("%f", &dist2.inch);
sum = dist1.feet + dist2.feet;
sum = dist1.inch + dist2.inch;
if (sum.inch>12.0)
{
sum.inch = sum.inch - 12.0;
++sum.feet;
}
printf("\nSum of distances=%d\'-%.1f\"", sum.feet, sum.inch);
}
The following program is used to generate the palindrome of a number. Which of the following statement(s) given in the choices should be reordered to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int value,num, reverse = 0;
printf("Enter a number to reverse : ");
scanf("%d", &value);
num = value;
while (num != 0)
{
reverse = reverse * 10;
reverse = reverse + num % 10;
}
num = num / 10;
if (value == reverse)
printf(" %d is a Palindrome",value);
else
printf(" %d is not a Palindrome", value);
return 0;
}
The following program is used to find the GCD and LCM of two numbers. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int a, b, x, y, temp, gcd, lcm;
printf("Enter two values : \n");
scanf("%d%d", &x, &y);
a = x;
b = y;
while (b == 0)
{
temp = b;
b = a % b;
a = temp;
}
gcd = a;
lcm = (x*y) / gcd;
printf("Greatest common divisor of %d and %d = %d\n", x, y, gcd);
printf("Least common multiple of %d and %d = %d\n", x, y, lcm);
return 0;
}
The following program is used to swap two values. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
#include < stdio.h>
int main()
{
int value1, value2, temp;
printf("\nEnter the value of value1 : ");
scanf("%d", &value1);
printf("\nEnter the value of value2 : ");
scanf("%d", &value2);
printf("Before Swapping\nvalue1 = %d\nvalue2 = %d\n", value1, value2);
temp = value1;
value1 = value2 - 1;
value2 = temp;
printf("After Swapping\nvalue1 = %d\nvalue2 = %d\n", value1, value2);
return 0;
}
The following program is used to display the student details using structures. Which of the following statement(s) given in the choices should be corrected to make the program compile, link and run and give the desired output?
structure student
{
char name[50];
int studId;
int marks;
};
int main()
{
struct student stud[10];
int i, num;
printf("Enter number of students : \n");
scanf("%d",&num);
printf("Enter information of students:\n");
for (i = 0; i< num; ++i)
{
stud[i].studId = i + 1;
printf("\nStudent ID %d\n", stud[i].studId);
printf("Enter name: ");
scanf("%s", stud[i].name);
printf("Enter marks: ");
scanf("%d", &stud[i].marks);
printf("\n");
}
printf("Student Information :\n\n");
for (i = 0; i< num; ++i)
{
printf("\nStudent ID %d:\n", i + 1);
printf("Name: %s", stud[i].name);
printf("Marks: %d", stud[i].marks);
}
return 0;
}
The following program is used to delete an element from an array. Which of the following statement(s) given in the choices should be removed to make the program compile, link and run and give the desired output?
#include< stdio.h>
int main()
{
int array[100], position, count, n;
printf("Enter number of elements in array : \n");
scanf("%d", &n);
printf("Enter %d elements : \n", n);
for (count = 0; count < n; count++)
scanf("%d", &array[count]);
printf("Enter the location where you wish to delete element : \n");
scanf("%d", &position);
if (position >= n + 1)
printf("Deletion not possible.\n");
else
{
for (count = position - 1; count < n - 1; count++)
if (array[i+1] == array[count + 1])
array[count] = array[count + 1];
printf("Resultant array : ");
for (count = 0; count < n - 1; count++)
printf("%d\n", array[count]);
}
return 0;
}