Предварительный процесс компилятора просто выполняет подстановку FTIMES везде, где он его видит, а затем компилирует код. На самом деле код, который видит компилятор, таков:
#define NUM 5
#define FTIMES(x)(x*5)
int main(void)
{
int j = 1;
printf("%d %d\n", j+5*5,(j+5)*5);
}
Затем, учитывая предпочтения оператора, вы можете понять, почему вы получаете 26 и 30.