Assuming that max() is a function or a macro that takes two arguments .....
One thing to watch is that log() is a math function which takes a double as argument. If all of your variables are of integral type you would need to convert something to double to allow it to work. For example;
/* provide an macro that implements max() for discussions sake */
#define max(a,b) ((a)<(b) ? (b) : (a))
int x, age, hieght, a;