数学のような関数

数学ではxを二乗するという関数を書くときは次のように書くと思います。

$$ f(x) = x^2 $$

この関数を使って他の式に代入することもあるかと思います。

$$ g(x) = \sin(f(x)) $$

このような書き方をC言語でも行うことができます。2乗するという関数を書いてみましょう。

int square(int x) {
    int t = x * x;
    return t;
}

数学的な書き方との違いとしては次のようなところが考えられます。

  • 入出力に型がある
  • 関数の中で変数を使っている
  • 明示的に何を返すか書かなくてはいけない

このように関数を表現できます。

これをmainから呼び出してみましょう。

int square(int x) {
    int t = x * x;
    return t;
}

int main() {
    int s = square(3);
    printf("%d\n", s); // 9が出力される
}