() are allowed to explicitly define the precedence (order of evaluation) of operators. Square brackets [] are reserved for array indexing, and curly braces {} are used to define blocks of code (like loops or functions).
*), division (/), and modulus (%) share the highest priority. Addition (+) and subtraction (-) share a lower priority. If operators have the same priority, associativity applies (left-to-right). Thus, * and / come before + and -.
int, float, char) differ based on the way they are stored in memory (size in bytes and encoding format, e.g., two's complement for int, IEEE 754 for float) and the type of operations that are mathematically and logically permissible on them (e.g., bitwise operations work on ints, but not floats).
while or do-while) is a control flow statement that allows code to be executed repeatedly based on a given boolean condition. It repeats until the condition evaluates to false.
int arr[10];). Dynamic sizing requires manual memory allocation using pointers.
printf or scanf) and User-defined Functions (created by the programmer to perform specific customized tasks).
int) data type in memory.
// or /* */) are non-executable statements used heavily by programmers to document their code. They are used to highlight sections, explain complex logic/functions, define the purpose of variables, and increase overall code maintainability for other developers.
if block; if false, it executes the alternative else block. Only one of the two options is ever executed.