SOLUTIONS RATED A+
✔✔If a program contains an error that divides a number by zero at the execution time.
This error is a - ✔✔Semantic Error
✔✔Given:
Very Simple Programming Language (VSPL)
<char> ::= a | b | c | ... | z | 0 | 1 | ... | 9
<operator> ::= + | - | * | / | % | < | > | == | >= | <=
<variable> ::= <char> | <char> <variable>
<expr> ::= <variable> <operator> <variable> | ( <expr> ) <operator> ( <expr> )
<assign> ::= <variable> = <expr>;
<statements> ::= <assign> | <assign> <statements>
The following is valid:
myvar = (x + y) * (a - c); - ✔✔true
✔✔Given:
Very Simple Programming Language (VSPL)
<char> ::= a | b | c | ... | z | 0 | 1 | ... | 9
<operator> ::= + | - | * | / | % | < | > | == | >= | <=
<variable> ::= <char> | <char> <variable>
<expr> ::= <variable> <operator> <variable> | ( <expr> ) <operator> ( <expr> )
<assign> ::= <variable> = <expr>;
<statements> ::= <assign> | <assign> <statements>
The following is valid:
,a = x + y; b = s * t; c = w + v; - ✔✔True
✔✔Given:
Very Simple Programming Language (VSPL)
<char> ::= a | b | c | ... | z | 0 | 1 | ... | 9
<operator> ::= + | - | * | / | % | < | > | == | >= | <=
<variable> ::= <char> | <char> <variable>
<expr> ::= <variable> <operator> <variable> | ( <expr> ) <operator> ( <expr> )
<assign> ::= <variable> = <expr>;
<statements> ::= <assign> | <assign> <statements>
The following is valid:
a = b + c + d; - ✔✔false
✔✔If you like to see accurate debugging information, which of the following program
processing would you recommend? - ✔✔Interpretation
✔✔If your application is composed of multiple modules (programs), which of the
following program processing would you recommend? - ✔✔Compilation
✔✔What is the main reason of applying two-step translation of high level programming
language? - ✔✔One compiler for all machines
✔✔What is "func" in this example?
#include <stdio.h>
#define func(x, y) (x > y) ? y : x
int main()
{
int x = 10;
int y = 9;
int z = func(x, y);
} - ✔✔A macro
✔✔Assume a function requires 20 lines of machine code and will be called 10 times in
the main program. You can choose to implement it using a function definition or a macro
definition. Compared with the function definition, macro definition will lead the compiler
to generate, for the entire program, ______ - ✔✔a longer machine code but with shorter
execution time.
, ✔✔Given the following code, what is the expected value for z?
#include <stdio.h>
#define func(x, y) (x > y) ? y : x
int main()
{
int x = 10;
int y = 9;
int z = func(++x, y++);
} - ✔✔10
✔✔Explicit type conversion is commonly refer to as __________ . - ✔✔Casting
✔✔Which of the following orthogonality describe this example:
If a block allows one statement, it should allow zero or more statments within that same
block. - ✔✔Number Orthogonality
✔✔In the C-Style input function scanf("%d", &i); What does the character "&" mean? -
✔✔scanf takes the address of an variable as its parameter.
✔✔Where is the main() function located in a C or C++ program? - ✔✔? main class
✔✔In C++, what function can be used to input a string with spaces? - ✔✔cin.getline(...);
✔✔What is NOT the purpose (functionality) of the forward declaration (prototype)? - ✔✔
✔✔A data type defines the - ✔✔values and operations allowed
✔✔Assume a varible is declared in a block of code within a pair of curly braces. The
scope of the variable - ✔✔starts from its declaration point and extends to the end of the
block.
✔✔Given a C declaration: char a[] = "Hello World"; What can be used as the initial
address of array a[]? Select all correct answers. - ✔✔*a[0]
&a[0] (check with professor)
✔✔Given a declaration: char a[] = "Hello World"; What is the size (in bytes) of the array
a[]? - ✔✔12 bytes
✔✔Which of the following C assignment statements (assign a value to a variable at the
semantic level) will NOT cause a compilation error?