c言語では関数を引数にとる関数を定義できて、

double calc1(double a);
double calc2(double func(double),double a){
    return func(a);
}

のようにすれば、

calc2(calc1,a);

という計算ができますが、calc1が2変数関数だったときに、

double calc1(double a,double b);

「calc1のaにある変数を代入した関数」をcalc2に渡すことはできますか?