It is an erroneous program.
Operators take expressions not statements. Function f(int) makes use of TERNARY OPERATOR, and just like any other operator, its operands (arguments) must be expressions.
The correct way to achieving the intended behaviour is this
#include<stdio.h>
int f(int a){
if(a>20)
return 10;
else
return 20;
}
int main(){
int b=f(20);
return 0;
}