When an array is passed to a function, it is actually passing the ________ of the first element.

  • Address
  • Copy
  • Reference
  • Value
When you pass an array to a function in C, you are actually passing the address (pointer) of the first element of the array. This allows the function to access and modify the original array.

You are working on an application that requires fast data retrieval times. What method of file access would be most suitable?

  • Direct File Access
  • Indexed File Access
  • Random Access
  • Sequential File Access
For fast data retrieval times, Random Access is the most suitable method. Unlike Sequential File Access, which reads data sequentially, and Indexed File Access, which uses an index to locate data, Random Access allows direct access to any part of the file. This is crucial for applications where quick retrieval of specific data is essential, such as databases and real-time systems.

You are developing a contact management system where each contact can have multiple addresses (home, work, etc.). How can you efficiently represent this information using structures?

  • By creating a separate database for addresses
  • By using an array for each contact
  • By using separate variables for each address
  • By utilizing a structure to hold multiple addresses within a contact structure
To efficiently represent multiple addresses for each contact, you can use a structure to hold multiple addresses within a contact structure. This approach ensures that each contact can have different types of addresses, such as home and work, making it a practical way to manage contact information.

How can you determine if you have reached the end of a file while reading it in C?

  • Check if the file size is zero.
  • Count the number of lines in the file.
  • Examine the file's creation date.
  • Use the feof function to check for end-of-file status.
You can determine if you've reached the end of a file in C by using the feof function, which checks for the end-of-file status of the stream.

What is the scope of a local variable defined inside a function in C?

  • Global scope
  • Limited to the block
  • Limited to the function
  • No scope
In C, a local variable defined inside a function has scope limited to that specific function. It cannot be accessed from outside the function.

In a C++ application, you notice that a function is being called with different types of arguments, but there is only one function definition. What feature of C++ could be allowing this behavior?

  • Dynamic casting
  • Function overloading
  • Inheritance and polymorphism
  • Operator overloading
The behavior of calling a function with different argument types using a single function definition is achieved through function overloading in C++. This feature allows multiple function definitions with the same name but different parameter types.

You are working on a program that processes user input, and you want to ensure that the input string does not exceed a certain length to prevent buffer overflow. Which string handling function would be appropriate to use?

  • strcpy
  • strncat
  • strncpy
  • strstr
To limit the length of user input and prevent buffer overflow, the strncpy function is appropriate. It allows you to copy a specified number of characters from the input to the destination, ensuring the destination buffer does not overflow. strstr searches for a substring, strncat concatenates strings with a specified limit, and strcpy copies a string without length control.

In a program that manipulates text, you need to store multiple strings. What is a potential issue with using character arrays instead of string literals?

  • Character arrays are less efficient in terms of memory usage compared to string literals.
  • Character arrays can't accommodate variable-length strings, making it challenging to store strings of different sizes.
  • Character arrays may lead to null-termination errors if not handled carefully.
  • Memory management becomes complex with character arrays, as you need to manually handle memory allocation and deallocation.
Using character arrays for storing multiple strings in a text-manipulation program can be problematic because character arrays have a fixed size and don't easily adapt to variable-length strings. This can lead to memory wastage or buffer overflows. String literals, on the other hand, are more flexible.

To declare a pointer to an integer in C, you would write ________.

  • float* y;
  • int x;
  • int* x;
  • x = 5;
To declare a pointer to an integer in C, you would write int x;* The int* indicates that x is a pointer to an integer.

The ________ algorithm is known for its simplicity but is inefficient for sorting large datasets.

  • Bubble Sort
  • Merge Sort
  • Quick Sort
  • Selection Sort
The correct option is 'Bubble Sort'. While Bubble Sort is easy to understand, it is not efficient for large datasets due to its O(n^2) time complexity.