Home Tests Campus Placement

Campus Placement

Campus placement MCQ questions — Aptitude, Verbal, Reasoning, Technical.

2,162 Q 4 Subjects Any Graduate
Take Mock Test
Difficulty: All Easy Medium Hard 2141–2150 of 2,162
Advertisement
Q.2141 Medium Computer Knowledge C Programming
Which of the following correctly describes the scope of a static variable declared inside a function?
A Local to the function, retains value between function calls
B Global scope, initialized once
C Local to the file only
D Creates a new instance on each function call
Correct Answer:  A. Local to the function, retains value between function calls
EXPLANATION

A static variable declared inside a function has local scope (visible only within that function) but persists for the entire program lifetime. Its value is retained between function calls and is initialized only once.

Take Test
Q.2142 Medium Computer Knowledge C Programming
What is the output of the following C code?
int arr[] = {10, 20, 30};
int *ptr = arr;
printf("%d", *(ptr + 1));
A 10
B 20
C 30
D Address of second element
Correct Answer:  B. 20
EXPLANATION

ptr points to arr[0]. ptr + 1 points to arr[1]. *(ptr + 1) dereferences to get the value at arr[1] which is 20. Pointer arithmetic adds sizeof(int) to the address for each increment.

Take Test
Q.2143 Medium Computer Knowledge C Programming
What happens when you use the strcpy() function without bounds checking?
A It prevents buffer overflow automatically
B It may cause buffer overflow if source string is longer than destination
C It returns an error code
D It truncates the source string automatically
Correct Answer:  B. It may cause buffer overflow if source string is longer than destination
EXPLANATION

strcpy() does not perform bounds checking. If the source string is longer than the destination buffer, it will write beyond the buffer boundary, causing a buffer overflow. This is a security vulnerability. Using strncpy() is safer.

Take Test
Q.2144 Medium Computer Knowledge C Programming
What is the output of the following C code?
int x = 5;
int *ptr = &x;
printf("%d %d", *ptr, x);
A 5 5
B Address Address
C Garbage value 5
D Compilation error
Correct Answer:  A. 5 5
EXPLANATION

*ptr dereferences the pointer to access the value at the address it points to, which is x = 5. So both *ptr and x print 5.

Take Test
Q.2145 Medium Computer Knowledge C Programming
What is the correct way to allocate memory for a single integer using malloc()?
A int *ptr = (int *)malloc(sizeof(int));
B int *ptr = malloc(sizeof(int));
C int *ptr = (int *)malloc(4);
D Both A and B
Correct Answer:  D. Both A and B
EXPLANATION

Both A and B are correct. Option A uses explicit type casting which is optional in C (not in C++). Option B avoids casting. Using sizeof(int) is preferred over hardcoding 4, as int size may vary across systems.

Take Test
Advertisement
Q.2146 Medium Computer Knowledge C Programming
What is the difference between scanf() and gets() functions?
A scanf() can read formatted input while gets() reads only strings
B gets() is safer than scanf()
C There is no difference
D scanf() stops at whitespace while gets() doesn't
Correct Answer:  A. scanf() can read formatted input while gets() reads only strings
EXPLANATION

scanf() reads formatted input based on format specifiers and stops at whitespace. gets() reads a string until a newline is encountered. Note: gets() is deprecated due to buffer overflow vulnerabilities.

Take Test
Q.2147 Medium Computer Knowledge C Programming
What is the output of the following C code?
int x = 5;
int y = ++x + x++;
printf("%d", y);
A 11
B 12
C 13
D Undefined behavior
Correct Answer:  D. Undefined behavior
EXPLANATION

This code exhibits undefined behavior because x is modified twice between sequence points without an intervening sequence point. The result depends on the compiler's implementation.

Take Test
Q.2148 Easy Computer Knowledge C Programming
What does the strlen() function return?
A Number of characters in a string including null terminator
B Number of characters in a string excluding null terminator
C Size of memory allocated to string
D Address of the first character
Correct Answer:  B. Number of characters in a string excluding null terminator
EXPLANATION

strlen() returns the length of a string without counting the null terminator ('\0'). For example, strlen("hello") returns 5, not 6.

Take Test
Q.2149 Easy Computer Knowledge C Programming
What is the output of the following C code?
int a = 10, b = 20;
int c = (a > b) ? a : b;
printf("%d", c);
A 10
B 20
C Compilation error
D 30
Correct Answer:  B. 20
EXPLANATION

The ternary operator (condition ? true_value : false_value) evaluates the condition (a > b). Since 10 is not greater than 20, it returns b which is 20.

Take Test
Q.2150 Easy Computer Knowledge C Programming
What is the purpose of the 'void' keyword in C?
A To declare a function that returns nothing
B To declare a generic pointer
C Both A and B
D To declare empty variables
Correct Answer:  C. Both A and B
EXPLANATION

void is used in two contexts: (1) as a function return type when a function doesn't return a value, and (2) to declare a generic pointer (void *) that can point to any data type.

Take Test
IGET
iget AI
Online · Ask anything about exams
Hi! 👋 I'm your iget AI assistant.

Ask me anything about exam prep, MCQ solutions, study tips, or strategies! 🎯
UPSC strategy SSC CGL syllabus Improve aptitude NEET Biology tips