Язык RCML предусматривает стандартный набор конструкций, влияющих на ход выполнения программы.Их можно разделить на условные, циклические и безусловные.

2.12.1 Условные управляющие конструкции

В RCML представлен всего один оператор условного перехода - if. Синтаксис его использования следующий:

if (выражение) {
	//набор операторов, если результат выражения истина
} else {
	//набор операторов, если результат выражения ложь
}

Результат выражения, заключенного в круглых скобках, приводится к логическому типу, и если результат – истина, то выполняется первый блок операторов в фигурных скобках, иначе — второй блок операторов после ключевого слова else. Второй блок операторов вместе с ключевым словом else может опускаться при задании условного оператора.

2.12.2 Циклические управляющие конструкции

Циклический оператор в RCML так же единствен, это оператор loop. Это более упрощенный оператор цикла по сравнению с аналогичными операторами в традиционных языках программирования. Он является безусловным, и его блок операторов будет выполняться бесконечно, если в нем не будет соответствующей конструкции выхода с предварительным условием или без него. Синтаксис оператора loop следующий:

loop {
	// блок операторов цикла
}

2.12.3 Прочие управляющие конструкции

К прочим управляющим конструкциям в языке RCML относятся операторы безусловного перехода, при достижении которых выполнение программы переходит на тот или иной участок.

Оператор перехода на начало цикла – continue. При его достижении происходит переход на начало текущего цикла. Используется без параметров.

Оператор выхода из цикла – break. При его достижении происходит прерывание текущего цикла. Используется без параметров.

Оператор выхода из функции – return. Может указываться как с выражением, так и без него, в первом случае результатом выполнения функции будет результат, возвращаемый выражением, во втором случае функция будет возвращать значение по умолчанию – 0.0.

Синтаксис использования оператора return с возвратом выражения:

return выражение;

Без возврата выражения:

return;

Примеры использования оператора return:

return 2+2; //выход из функции в возвратом значения
return; //выход из функции без возврата значения

В случае если оператор return будет указан в функции main, то его выполнение приведет к завершению работы RCML программы, а значение, переданное через данный оператор, будет передано в ОС как код завершения программы. Однако при этом передаваемое значение будет округлено до целых посредством отброса дробной части.

Оператор выхода из программы – exit. При достижении этого оператора происходит завершение выполнения программы независимо от того, в какой функции он указан. Данный оператор также, как и оператор return может вызываться как с выражением, так и без него. В первом случае в ОС возвращается результат выражения как код завершения программы, во втором случае код завершения программы считается равным 0.

Синтаксис использования оператора exit с возвратом выражения:

exit выражение;

Без возврата выражения:

exit;