В стандарте языка используются термины "expression" (например,
printf("something\n")
, без точки с запятой -- это expression, а именно вызов функции) и "statement" (например
if (expression) statement
-- это statement), а иногда expression может быть statement'ом (например,
printf("something\n");
, с точкой с запятой), это называется "expression statement".
"expression" обычно переводится как "выражение" и не вызывает трудностей. Со "statement" сложнее. Мне нравятся переводы "конструкция" ("конструкция if", "конструкция switch") или "инструкция" ("инструкция goto", "инструкция return").
Как называть по-человечески строчки:
if ( a > b )
printf("something\n");
Конструкция
if
с единственной инструкцией-выражением.
А такое:
if(condition) {
printf("something1\n");
printf("something2\n");
}
Конструкция
if
с составной инструкцией содержащей две инструкции-выражения.