Difficulty: Easy
Correct Answer: 426
Explanation:
Introduction:
This question distinguishes integer constants from floating-point (real) constants in C. Understanding literal forms helps prevent unintended type choices and implicit conversions.
Given Data / Assumptions:
Concept / Approach:
In C, a floating (real) constant typically has a decimal point and/or an exponent part (e.g., 1.0, .5, 2e3, -3.14, +6.02e23). An integer constant lacks a decimal point and exponent (e.g., 426) and therefore is not a real constant. A leading plus or minus is a unary operator applied to the literal token; it does not invalidate the floating form.
Step-by-Step Solution:
Verification / Alternative check:
Compilers will type '426' as an int by default, whereas literals with a decimal point are typed as double unless suffixed (e.g., f/F for float).
Why Other Options Are Wrong:
All other options contain a decimal point and thus are valid real constants in C.
Common Pitfalls:
Confusing the presence of a sign with type; forgetting exponent notation also creates real constants (e.g., 1e2).
Final Answer:
426
Discussion & Comments