求助题目,不知道怎么在函数里调用函数

18 求函数值2

描述 输入x(x为整数),求函数值F(x)
函数定义如下:
F(x)=x x小于2
G(x)=x x小于2
F(x)=G(x/2)*2 x大于等于2且x为偶数
F(x)=G((x-1)/2) x大于等于2且x为奇数
G(x)=G(x/2)+1 x大于等于2且x为偶数
G(x)=x x为奇数

输入样例 10
输出样例 10


#include <stdio.h>
int G(int x) {
    if(x < 2 || x%2!=0)
        return x;
    return G(x/2)+1;
}
int F(int x) {
    if(x < 2)
        return x;
    if(x>= 2 && x%2==0)
        return G(x/2)*2;
    if(x>= 2 && x%2!=0)
        return G( (x-1)/2 );
}
int main(void) {
    int x;
    while (scanf("%d", &x)) {
        printf("%d\n", F(x));
    }
    return 0;
}