Final answer:
The correct statement is A) Syntax errors are caught by the compiler. Logic errors have effects at execution time.
Step-by-step explanation:
The correct statement is A) Syntax errors are caught by the compiler. Logic errors have effects at execution time.
Syntax errors are mistakes in the programming code that violate the rules of the programming language. These errors are caught by the compiler during the compilation phase, before the program is executed. Logic errors, on the other hand, do not violate the syntax rules but still cause the program to produce incorrect results. These errors are only discovered at execution time.
For example, if there is a syntax error in a line of code, the compiler will identify the error and provide an error message. However, if there is a logic error, the program may run without any error messages but produce incorrect output.