#include <stdio.h>
// 関数の宣言
int add(int a, int b);
int main() {
int sum = add(10, 20); // 関数を呼び出して結果を変数に格納
printf("Sum: %d\n", sum);
return 0;
}
// 関数の定義
int add(int a, int b) {
return a + b; // 2つの整数の合計を返す
}
#include <stdio.h>
// 関数の宣言
int square(int num);
int main() {
int result = square(4); // 関数を呼び出して戻り値を変数に格納
printf("Square: %d\n", result);
return 0;
}
// 関数の定義
int square(int num) {
return num * num; // 平方値を返す
}
ポイント:戻り値を利用する場合、関数の返す値を必ず変数に格納するか使用してください。
3. 関数の応用例
3.1 計算機プログラム
例:足し算、引き算、掛け算、割り算を行う計算機プログラム
#include <stdio.h>
// 各演算の関数を定義
int add(int a, int b) { return a + b; }
int subtract(int a, int b) { return a - b; }
int multiply(int a, int b) { return a * b; }
int divide(int a, int b) { return b != 0 ? a / b : 0; }
int main() {
int a = 20, b = 10;
printf("Add: %d\n", add(a, b));
printf("Subtract: %d\n", subtract(a, b));
printf("Multiply: %d\n", multiply(a, b));
printf("Divide: %d\n", divide(a, b));
return 0;
}
ポイント:演算の種類ごとに関数を作成することで、コードの見通しが良くなります。
4. 練習問題
以下の課題に挑戦して、関数の定義と呼び出し方を実践的に学びましょう。
引数として受け取った整数が偶数か奇数かを判定する関数を作成してください。
3つの整数を受け取り、その中で最も大きな値を返す関数を作成してください。
文字列を逆順に表示する関数を作成してください。
5. 練習問題の解答と解説
問1の解答
#include <stdio.h>
// 偶数か奇数かを判定する関数
void checkEvenOdd(int num) {
if (num % 2 == 0) {
printf("%d is even.\n", num);
} else {
printf("%d is odd.\n", num);
}
}
int main() {
checkEvenOdd(7);
checkEvenOdd(10);
return 0;
}