Accounting
Anthropology
Archaeology
Art History
Banking
Biology & Life Science
Business
Business Communication
Business Development
Business Ethics
Business Law
Chemistry
Communication
Computer Science
Counseling
Criminal Law
Curriculum & Instruction
Design
Earth Science
Economic
Education
Engineering
Finance
History & Theory
Humanities
Human Resource
International Business
Investments & Securities
Journalism
Law
Management
Marketing
Medicine
Medicine & Health Science
Nursing
Philosophy
Physic
Psychology
Real Estate
Science
Social Science
Sociology
Special Education
Speech
Visual Arts
Programming Language
Q:
Non-constant variables are also known as
(a) lvalues, but can be used as rvalues
(b) lvalues, and can not be used as rvalues
(c) rvalues, but can be used as lvalues
(d) constant variables
Q:
Which statement is true?
a) Operator || has a higher precedence than operator &&.
b) In expressions involving operator ||, making the condition that is most likely to be false the leftmost condition can often reduce execution time.
c) The logical negation operator is a binary operator.
d) In expressions using operator &&, making the condition that is most likely to be false the leftmost condition can often reduce execution time.
Q:
Which statement is true?
a) To test multiple conditions in the process of making a decision requires logical operators.
b) The keywords for the logical operators are AND, OR and NOT.
c) The logical AND of two expressions is true if and only if each of the conditions is true.
d) Truth tables deal only with cases in which all conditions are truthful (i.e., true).
Q:
An example of a unary operator is
(a) a relational operator
(b) an assignment operator
(c) an increment operator
(d) a logical operator
Q:
An operator that associates from right to left is
(a) !=
(b) ,
(c) ()
(d) ?:
Q:
The condition
num != 65
cannot be replaced by:
(a) num > 65 || num < 65
(b) !(num == 65)
(c) num " 65
(d) !(num " 65)
Q:
The OR (||) operator
(a) has higher precedence than the AND (&&) operator
(b) stops evaluation upon finding one condition to be true
(c) associates from right to left
(d) is a ternary operator
Q:
In C, the condition 4 > y > 1
(a) evaluates correctly
(b) does not evaluate correctly and should be replaced by (4 > y && y > 1)
(c) does not evaluate correctly and should be replaced by (4 > y & y > 1)
(d) does not evaluate correctly and should be replaced by (4 > y || y > 1)
Q:
Which statement is true?
a) The break statement causes an immediate exit from a while, for, do while or if else statement.
b) The continue statement is designed for use with the while, for, do while or switch statements.
c) An equivalent while statement for any for statement can always be formed.
d) The break statement causes an immediate exit from a while, for, do while or switch statement.
Q:
Which of the following is false?
(a) break and continue statements alter the flow of control.
(b) continue statements skip the remaining statements in the body of the loop in which they are embedded.
(c) break statements exit from the loop in which they are embedded.
(d) a continue statement can never appear in the else part of an if statement.
Q:
Which statement is true?
a) The do while iteration statement is an alternate notation for the while iteration statement; these statements function identically.
b) The do while iteration statement tests the loop-continuation condition before the loop body is performed.
c) The loop body of a correct do while iteration statement is always executed at least once.
d) The braces delineating the body of a do while statement are always required.
Q:
The program segment
int counter = 1;
do {
printf("%i ", counter);
} while (++counter <= 10);
will ________.
(a) print the numbers 1 through 11
(b) print the numbers 1 through 10
(c) print the numbers 1 through 9
(d) cause a syntax error
Q:
If a dowhile statement is used,
(a) an infinite loop will not take place
(b) the counter must be preincremented if it's also the condition
(c) the body of the loop will execute at least once
(d) an off-by-one error will not occur
Q:
Which statement is true?
a) EOF must have the value 1 on all C systems.
b) EOF is a symbolic constant defined in the <symbol.h> header file.
c) EOF is a symbolic variable defined in the <stdio.h> header file.
d) EOF is a symbolic integer constant defined in the <stdio.h> header file.
Q:
Which statement regarding the switch statement is false?
a) It's appropriate for algorithms that contain a series of decisions in which a variable or expression is tested separately for each of the constant integral values it may assume.
b) The default case is required.
c) The default case must be at the bottom of the switch after all the non-default cases.
d) Many cases may all invoke the same code.
Q:
In a switch statement
(a) a breakis required after each case
(b) multiple actions do not need to be enclosed in braces
(c) a defaultcaseis required
(d) a breakis required after the defaultcase
Q:
A switch statement should be used
(a) as a single-selection statement
(b) as a double-selection statement
(c) when a variable may assume many different values which must be tested
(d) to replace all if and ifelse statements
Q:
Which statement is true?
a) The conversion specifier %7.2f prints a floating-point value with a field width of 10 positions.
b) The conversion specifier %7.2f prints a floating-point value with 7 positions to the left of the decimal point.
c) The conversion specifier %7.2f prints a floating-point value with 5 positions to the left of the decimal point.
d) The conversion specifier %7.2f prints a floating-point value with 4 positions to the left of the decimal point.
Q:
Which statement is true?
a) Use float variables to perform monetary calculations in C.
b) Use double variables to perform monetary calculations C.
c) Monetary calculations can be performed in C.
d) Printing with %.2f guarantees correct monetary calculations in C.
Q:
Which expression raises x to the y power?
a) x ** y
b) x ^ y
c) x pow y
d) pow(x, y)
Q:
Which statement is generally false?
a) Statements preceding a for and statements in the body of a for should typically be merged into the for header.
b) Limit the size of control statement headers to a single line, if possible.
c) Initialization of a for loop control variable can occur before the for loop executes and not in the loop itself.
d) The increment portion of a for header can be a decrement.
Q:
What is produced by a for statement with a correct body and with the following header
for (i = 20; i >= 2; i += 2)
a) a syntax error
b) a divide-by-zero error
c) an infinite loop
d) the even values of i from 20 down to 2.
Q:
What is the highest value assumed by the loop counter in a correct for statement with the following header?
for (i = 7; i <= 72; i += 7)
a) 7
b) 77
c) 70
d) 72
Q:
The for statement header
for (i = 1; i < 100; ++i)
performs the body of the loop for
a) values of the control variable from 1 to 100 in increments of 1.
b) values of the control variable from 1 to 99 in increments of 1.
c) values of the control variable from 0 to 100 in increments of 1.
d) values of the control variable from 0 to 99 in increments of 1.
Q:
Which statement about a correct for statement with an initialization expression, a loop-continuation test, an increment expression and a loop body is false?
a) The initialization expression is executed only once.
b) The loop-continuation test is evaluated each time through the loop.
c) The initialization is performed each time through the loop.
d) The increment expression is performed after the loop body.
Q:
Which statement regarding for statements is false?
a) In a for statement, the initialization, loop-continuation condition, and increment can contain arithmetic expressions.
b) The increment must be greater than zero.
c) If the loop-continuation condition is initially false, the body of the loop is not performed.
d) It is common to use the control variable for controlling iteration while never mentioning it in the body of the loop.
Q:
If the increment of the for statement is ________ then the loop counts ________.
(a) true, downwards
(b) false, downwards
(c) positive, downwards
(d) negative, downwards
Q:
If the loop-continuation condition in a for statement is initially false, ________.
(a) the body portion of the loop is not performed
(b) execution proceeds with the statement following the for statement
(c) both a and b
(d) none of the above
Q:
Which of the following is an incorrect expression to increment c by 1 in the increment expression of a for "header?"
a) c += 1
b) ++c
c) c++
d) c + 1 = c
Q:
A programmer intentionally creates a for-loop with the following for header:
for (; ;)
The programmer's intent was most likely to create
a) a syntax error
b) an infinite loop
c) a logic error
d) a divide-by-zero error
Q:
What happens if the loop-continuation test is omitted in a for-statement?
a) C assumes the condition is false, so the loop terminates.
b) A syntax error occurs.
c) C assumes the condition is true, so the loop executes one more time, then terminates.
d) An infinite loop.
Q:
Which statement is false?
a) Comma operators evaluate lists of expressions from right to left.
b) The value of a comma-separated list of expressions is the value of the rightmost expression in the list.
c) The type of a comma-separated list of expressions is the type of the rightmost expression in the list.
d) The comma operator is often used to specify multiple initializations in one particular type of iteration statement.
Q:
The comma operator is most often used in __________ statements.
a) while
b) do while
c) for
d) switch
Q:
Using an incorrect relational operator or using an incorrect final value of a loop counter in the condition of a while or for statement is a frequent cause of __________errors.
a) syntax
b) compilation
c) off-by-one
d) divide-by-zero
Q:
A programmer writes a for statement to count from 1 to 10 and explicitly mentions the 1 and the 10 in the for "header." Which relational operator would probably be used in the loop-continuation test?
a) >
b) >=
c) <
d) <=
Q:
Which of the following is not specified by the following code segment:
for (c = 1; c <= 10; c++)
a) initial value of the loop counter
b) loop continuation test
c) increment of the loop counter
d) body statement of the loop
Q:
Which statement automatically handles all the details of counter-controlled iteration.
a) for
b) while
c) do while
d) continue
Q:
Which statement is generally false?
a) Control counting loops with integer values.
b) Indent the statements in the body of each control statement for clarity.
c) Put a blank line before and after each major control statement to make it stand out in the program.
d) The more deeply nested a program is, the easier it is to understand.
Q:
Which data type should normally not be used to control a counting loop?
a) int
b) float
c) short
d) long
Q:
In the context of counter-controlled iteration, which of the following is not accomplished by the control-variable initialization statement?
int c = 10;
a) Names the control variable.
b) Defines the control variable to be an integer.
c) Specifies the sentinel value.
d) Sets the initial value of the control variable to 10.
Q:
Which is not always required by counter-controlled iteration?
a) The name of a control variable (or loop counter).
b) The initial value of the control variable.
c) The decrement by which the control variable is modified each time through the loop.
d) The condition that tests for the final value of the control variable (i.e., whether looping should continue.
Q:
Which of the following is a poor programming practice?
(a) indenting the statements in the body of each control statement
(b) using floating-point values as the counter in counter-controlled iteration
(c) using more than two levels of nesting
(d) placing vertical spacing above and below control statements
Q:
The statement
while (--counter >= 1) {
printf("%s
", counter % 2 ? "even" : "odd");
}
can not be rewritten as
(a)
while (--counter >= 1) {
if (counter % 2) {
puts("even");
}
else {
puts("odd");
}
}
(b)
while (counter >= 1) {
if (counter % 2) {
puts("even");
}
else {
puts("odd");
}
}
--counter;
(c)while (counter >= 1) {
if (counter % 2) {
puts("even");
}
else {
puts("odd");
}
--counter;
}
(d)
do {
printf("%s
", counter % 2 ? "odd" : "even");
--counter;
} while (counter >= 2);
Q:
Which of the following does counter-controlled iteration not require?
(a) an initial value
(b) a condition that tests for the final value
(c) an increment or decrement by which the control variable is modified each time through the loop
(d) counter controlled iteration requires all of the above
Q:
Which statement is true?
a) Sentinel values are used to control iteration when the precise number of iterations is known in advance.
b) In a counter controlled-loop, the counter may not count downward.
c) Sentinels must be distinct from regular data items.
d) Sentinel-controlled iteration is often called definite iteration.
Q:
Which statement is false?
a) Counter-controlled repetion is sometimes called definite iteration.
b) Sentinel-controlled iteration is sometimes called indefinite iteration.
c) The sentinel value typically indicates "end of data."
d) In counter-controlled iteration, the control variable is always incremented by 1 each time the group of instructions is performed.
Q:
________ iteration is sometimes called indefinite iteration.
(a) counter-controlled
(b) sentinel-controlled
(c) variable-controlled
(d) none of these
Q:
________ iteration is sometimes called definite iteration.
(a) counter-controlled
(b) sentinel-controlled
(c) variable-controlled
(d) none of these
Q:
Which statement is used to skip the remainder of the body of an iteration statement and proceed with the next iteration of the loop?
a) skip
b) proceed
c) continue
d) jump
Q:
Which is not an iteration statement?
a) continue
b) for
c) while
d) do while
Q:
Which of the following statements is true?
(a) A counter variable that stores only non-negative numbers should be declared as an unsigned integral type.
(b) A counter variables that stores only non-negative numbers should be declared as a signed integral type.
(c) The type of a counter does not matter
(d)None of the above.
Q:
Which of the following statements is true about undefined behavior, which can leave a system open to attack?
(a) It's not possible to have undefined behavior when adding two integers.
(b) Adding two integers can result in arithmetic overflow, which can cause undefined behavior.
(c) You should not worry about undefined behavior in your programs.
(d)None of the above.
Q:
Which statement is true?
a) The expression ++(a + 1) adds 2 to a.
b) The expression **a multiplies a by 1.
c) The ANSI standard for the C programming language specifies the order in which each operator's operands will be evaluated.
d) The expression --(abc * 37) is a syntax error
Q:
In which of the following is y not equal to 5 after execution? Assume that x is equal to 4.
(a) y = 5;
(b) y = x++;
(c) y = ++x;
(d) y = x = 5;
Q:
Which of the following will not increment variable c by one?
(a) c + 1;
(b) c++;
(c) ++c;
(d) c += 1;
Q:
Which assignment expression is equivalent to c = c / 2 ?
(a) c / = 2
(b) c / c = 2
(c) c /= 2
(d) c =/ 2
Q:
If x = 3, which of the following sets x to 7?
(a) x *= 4;
(b) x += 4;
(c) x =+ 4;
(d) x + 4 = x;
Q:
Which statement is true?
a) With nested control statements, the inner control statement is executed in sequence after the outer control statement completes its own execution.
b) With nested control statements, the inner control statement is executed exactly once.
c) Experience has shown that the most difficult part of solving a problem on a computer is converting an already correct algoithm to a C program.
d) A double-selection statement can be nested in an iteration statement.
Q:
Having a loop within a loop is known as
(a) recursion
(b) doubling up
(c) nesting
(d) a redundancy
Q:
Which of the following is not a synonym for "sentinel value."
a) signal value
b) dummy value
c) counter value
d) flag value
Q:
Which operation does not take place in the following example?
int x = 21;
double y = 6;
double z = 14;
y = x / z;
x = 5.5 * y;
(a) implicit conversion
(b) promotion
(c) explicit conversion
(d) truncation
Q:
What is the final value of x after performing the following operations?
int x = 21;
double y = 6;
double z = 14;
y = x / z;
x = 5.5 * y;
(a) 8.25
(b) 5.5
(c) 5
(d) 8
Q:
In indefinite iteration, an input value
(a) should always be evaluated before being processed
(b) should always be processed directly after it is entered
(c) should never be modified
(d) can be entered, processed, and evaluated in any order
Q:
A fatal logic error is always caused by:
(a) not initializing variables before executing an iteration statement
(b) choosing a sentinel value that is also a data value
(c) using a counter variable in a calculation after the loop
(d) an attempt to divide by zero
Q:
Indefinite iteration is controlled by a
(a) counter
(b) sentinel value
(c) data value
(d) non-constant condition
Q:
Counter-controlled iteration is often called __________ iteration because the number of iterations is known before the loop begins executing.
a) indefinite
b) sentinel
c) definite
d) determinate
Q:
An uninitialized variable contains ________.
(a) the value last stored in the memory location reserved for that variable
(b) no value
(c) a value of zero
(d) a randomly assigned value
Q:
Consider the following correct segment of a correct C program:
p = 2;
while (p < 2000) {
p = 2 * p;
}
What is the value of p after this while loop completes its execution?
a) 1023
b) 1024
c) 2047
d) 2048
Q:
How many times will the following program print hello?
i = 1;
while (i <= 10) {
puts("hello");
}
(a) 10
(b) 8
(c) an infinite number of times
(d) 0
Q:
What is wrong with the following loop?
While (sum <= 1000) {
sum = sum + 30;
}
(a) The parenthesis should be braces.
(b) The braces around sum = sum +30; should be removed.
(c) While should be while.
(d) There should be a semicolon after While (sum <=1000).
Q:
The empty statement is represented by placing __________ where a statement would normally be.
a) empty
b) ;
c) null
d) :
Q:
Placing a semicolon after the parenthesized condition in an if statement leads to a __________ error in single-selection if statements and a __________ error in double-selection if statements.
a) logic, logic
b) logic, syntax
c) syntax, logic
d) syntax, syntax
Q:
A statement is called a block if it ________.
(a) is a compound statement
(b) contains definitions
(c) is a compound statement that contains definitions
(d) does not contain definitions
Q:
Which of the following will generate an error?
(a) if (answer == 7) {
puts("correct");
}
else {
puts("incorrect");
}
(b) puts(answer == 7 ? "correct" : "incorrect");
(c) printf("%s
", answer == 7 ? "correct" : "incorrect");
(d) answer == 7 ? puts("correct") : puts("incorrect");
Q:
The conditional operator (?:) ________.
(a) is the only ternary operator in C
(b) is a unary operator
(c) associates from left to right
(d) accepts two operands
Q:
Which statement is false?
a) A compound statement can be placed anywhere in a program that a single statement can be placed.
b) The if selection statement can have only one statement in its body.
c) A set of statements contained within a pair of braces ({ and }) is called a compound statement.
d) An if slection statement can have a compound statement in its body.
Q:
Which of the following statements correctly prints "Passed" if the student's grade is greater than or equal to 60 and "Failed" if the student's grade is less than 60? [The quotes, of course, should not print.]
a) printf("%s
", grade >= 60 : "Passed" : "Failed");
b) grade >= 60 : puts("Passed ") ? puts("Failed ");
c) printf("%s
", grade >= 60 ? "Passed" : "Failed");
d) grade >= 60 ? puts("Passed ") ? puts("Failed ");
Q:
A correct decision symbol has __________ flowlines emerging from it.
a) 4
b) 3
c) 2
d) 1
Q:
Which statement is true about the contents of a correct diamond symbol in a correct flowchart.
a) It must contain an expression that evaluates to zero or one.
b) It must contain a condition or expression that can be either true or false.
c) It must contain relational operators.
d) It must contain equality operators.
Q:
The C compiler ignores __________ characters like blanks, tabs and newlines used for indentation and vertical spacing.
a) transparent
b) translucent
c) white
d) whitespace