Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Which statement is incorrect? partnums[ The statement int partnums[]={136, 122,

ID: 3858358 • Letter: W

Question

Which statement is incorrect?

partnums[

The statement
int partnums[]={136, 122, 109, 146};
creates an array of size 4

The statement
partnums[3] = 144;
works regardless of whether partnums is an array or a vector

The statement

cout << partnums.size() << endl;

works only if partnums is a vector

10 points   

QUESTION 2

Which statement is incorrect?

Linear search uses less comparisons than Binary search if the target is at the beginning of the set

Binary search uses less comparisons than Linear search if the target is exactly in the middle of the set

Linear search uses more comparisons than Binary search if the target is at the end of the set

Linear search data in the set can be unsorted, Binary search data in the set must be sorted

10 points   

QUESTION 3

Which statement is incorrect?

An array can be used to create a vector

A vector resizes automatically

An array cannot be resized

An array can be resized to hold more elements but not less

10 points   

QUESTION 4

Which statement is incorrect?

The manipulators endl and function setf() and precision are provided by the iostream header. The manipulators setw and setprecision are provided by the iomanip header.

When program calls the setf function on an output stream, the effect continues until the program calls unsetf with the same argument to turn it off

Setting the width of output with call do the width() function, affects only the next output

Setting the width of the output with the manipulator setw has a different result from setting the width with the width function

10 points   

QUESTION 5

Which of the following sets of statements will set floating point output to the stream outStream to fixed point with set 3 places of decimals?

(Two correct answers)

outStream << setflag(ios::fixed);
outStream << setflag(ios::showpoint);
outStream << setprecision(2);

outStream.setf(ios::fixed | ios::showpoint);
outStream << setprecision(2);

outStream.setf(ios::fixed);
outStream.setf(ios::showpoint);
outStream.precision(2);

outStream.flags(ios::fixed);
outStream.flags(ios::showpoint);
outStream.precision(2);

10 points   

QUESTION 6

Which of the following positions the file pointer for a file that has been opened for reading and writing?

Use the size() member function on the file stream to position the file pointer

Use the seekp(arg) fstream member function with the number of bytes to the record in question (counting the first byte as 0) as argument to position the file pointer

Use the seekp(arg) fstream member function with the number of records (counting the first record as 0) as argument to position the file pointer

Use the sizeof operator to determine the number of bytes in the file stream.

10 points   

QUESTION 7

Which statement is incorrect?

An output stream flows from your program to somewhere outside the program, either to a file or to some device such as the screen

cin is an input stream

An input stream is a stream of data flowing from your program, either to a file, or to the keyboard

A stream is a flow of data into or out of your program

10 points   

QUESTION 8

Which statement is incorrect?

The flush function copies the file buffer to the file on the file medium (disk, etc)

When you use the open member function to tie a file name to a file stream, the file name is called the external file name, the program refers to the file by the stream variable used to open the file

When you write

ifstream inStream;
inStream.open("infile.dat");

the file infile.dat must be located in the directory where the program is being run

A file is automatically closed when a program terminates, so there is never a need to close a file

10 points   

QUESTION 9

Which of the following is a restriction on use of a stream variable (either ifstream or ofstream)?

To use a stream variable as a function parameter you can only use call-by-reference

To use a stream variable as a function parameter you can only use call-by-value

To use a stream variable as a function parameter you can use call-by-value or call-by-value

A file variable can be used in any way any other variable can be use

10 points   

QUESTION 10

To determine whether a file was opened successfully, the program can use the fstream function:

Hint: google

eof()

close()

fail()

open()

10 points   

QUESTION 11

A file stream, fStr, is open and attached to physical file.txt. To reset this file stream so that the file can be read again starting at the first line requires

Only calling the member function open() using fStr as the calling object with the “file.txt” as argument.

“File stream fStr, reset yourself to the start of the file.”

Calling the reset() member function using fStr as the calling object but with no argument

With calling object fStr call close()then call open( ) with argument “fStr”.

10 points   

QUESTION 12

Which of these lines is NOT produced by the following code, assuming they are correctly implemented in a program?
(You may need to fix them, but without altering the output, i.e. fix the double quotes)

cout << "*" << setw(5) << 123 << "*"
<< 123 << "*" << endl;
cout.setf(ios::showpos);
cout << "*" << setw(5) << 123 << "*"
<< 123 << "*" << endl;
cout.unsetf(ios::showpos);
cout.setf(ios::left);
cout << "*" << setw(5) << 123 << "*"
<< setw(5) << 123 << "*" << endl;

*123**

+123*+123*

123*123*

*123 *

10 points   

QUESTION 13

Which of the following are correct ways to end a loop using a test for end-of-file?

(Two correct answers)

inStream.get(next);
while(!inStream.eof( ))
{
cout << next;
inStream.get(next);
}

inStream.get(next)
while(!eof(inStream))
{
cout << next;
inStream.get(next);
}

while(inStream >> next)
  cout << next;

while(inStream->next)
  {
cout << next;
}

10 points   

QUESTION 14

Which function takes a single char value from the input file, without regard to whether it is a whitespace?

putline()

getline()

get()

put()

10 points   

QUESTION 15

To open a file for read-write and random access does NOT require

#include<fstream>, using std::fstream; and using std::ios;

The stream to be defined using the class fstream. defined in the <fstream> header file

The usual definition of an ofstream or ifstream object

The stream to be connected to the physical file object with first argument a C-string containing the physical file name and a second argument, ios::in | ios::out that specifies that the i/o with the file should be for either reading or writing

10 points   

QUESTION 16

Why does this version of the swap function fail to work? Is there a fix?
void swap(int & lhs, int& rhs)
{
lhs = rhs;
rhs = lhs;
}

We can fix if we just reverse the order of the lines.

It works OK.

It fails because the programmer forgot to make the parameters call-by-reference

It fails because the first line destroys the old value of lhs without saving it. Then both variables have the old value of rhs in them.

10 points   

QUESTION 17

Consider the following function and code segment.
void One( int first, int & second )
{
first = 17;
second = first + 1;
}
int main()
{
// other code ...
int j = 4;
int k = 3;
One(j, k);
// other code ..
}
After the call to One(j, k); what are the values of j and k?

j == 17, k == 18;

j == 4, k == 3;

j == 4, k == 18;

j == 17, k == 3;

10 points   

QUESTION 18

Which is correct?

There is only one kind of parameter passing in C++, namely call-by-value

The call-by-reference mechanism is specified in the function declaration and definition, using a $ between the type and the parameter

The position of the ampersand in the function header is of no importance to the proper compiling and execution of code that uses call-by-reference parameters

A call-by-reference parameter may pass data only out of a function

10 points   

QUESTION 19

Which is correct?

Names of parameters in functions, especially function prototypes, have no meaning, and may be selected quite arbitrarily.

The compiler ha no problem distinguishing these two function definitions:
void func(double &x){/*…*/}
void func(double x){/*…*/}

Call-by-reference is restricted to void functions

There is no problem with the compiler distinguishing these two function definitions:
void func(double x){/*…*/}
int func(double x){/*…*/ return something_double;}

10 points   

QUESTION 20

Consider the function, where the programmer inadvertently left out the ampersand in the definition of parRef. What is the output of the code?
void doStuff(int parValue, int parRef)
{
parValue = 100;
cout << “parValue in call to doStuff = “
<< parValue << endl;
parRef =222;
cout << “parRef in call to doStuff = “
<< parRef << endl;
}
and consider the call, which we assume is in a complete and correct program
int n1 = 1, n2 =2;
doStuff(n1, n2);
cout << “n1 after call to doStuff = “ << n1 << endl;
cout << “n2 after call to doStuff = “ << n2 << endl;

parValue in the call to doStuff = 100;
parValue in the call to doStuff = 222;
n1 after function call = 1;
n2 after function call = 222

parValue in the call to doStuff = 100;
parValue in the call to doStuff = 222;
n1 after function call = 100
n2 after function call = 222

parValue in the call to doStuff = 100;
parValue in the call to doStuff = 222;
n1 after function call = 1;
n2 after function call = 2

x parValue in the call to doStuff = 100;
parValue in the call to doStuff = 222;
n1 after function call = 100
n2 after function call = 2

Plz, answer the all question

partnums[

The statement
int partnums[]={136, 122, 109, 146};
creates an array of size 4

The statement
partnums[3] = 144;
works regardless of whether partnums is an array or a vector

The statement

cout << partnums.size() << endl;

works only if partnums is a vector

Explanation / Answer

Question 1: Answer (a) partnums[

because it is incomplete

The statement
int partnums[]={136, 122, 109, 146};
creates an array of size 4 - is correct

QUESTION 2

Which statement is incorrect? - Linear search data in the set can be unsorted, Binary search data in the set must be sorted

QUESTION 3

Which statement is incorrect?

An array can be resized to hold more elements but not less

QUESTION 4

Which statement is incorrect?

Setting the width of the output with the manipulator setw has a different result from setting the width with the width function - because these two ways call the same function.

QUESTION 5

Which of the following sets of statements will set floating point output to the stream outStream to fixed point with set 3 places of decimals?

outStream << setflag(ios::fixed);
outStream << setflag(ios::showpoint);
outStream << setprecision(2);

outStream.setf(ios::fixed | ios::showpoint);
outStream << setprecision(2);

QUESTION 6

Which of the following positions the file pointer for a file that has been opened for reading and writing?

Use the seekp(arg) fstream member function with the number of records (counting the first record as 0) as argument to position the file pointer

QUESTION 7

Which statement is incorrect?

An input stream is a stream of data flowing from your program, either to a file, or to the keyboard - the enters into a program is a input stream is not true.

QUESTION 8

Which statement is incorrect?

When you write

ifstream inStream;
inStream.open("infile.dat");

the file infile.dat must be located in the directory where the program is being run - because the path can be specified with the filename the infile,dat is not in the directory.

QUESTION 10

To determine whether a file was opened successfully, the program can use the fstream function:

open()

QUESTION 11

A file stream, fStr, is open and attached to physical file.txt. To reset this file stream so that the file can be read again starting at the first line requires

With calling object fStr call close()then call open( ) with argument “fStr”.