演習課題「掛け算を計算する関数を呼び出してみよう」
右のコードには、2 つの引数を掛け算する multiply 関数が定義されています。
この関数を呼び出して、「3x4」の計算結果を出力してください。
プログラムを実行して、正しく表示されれば演習課題クリアです!
期待する出力値
3 x 4 = 12
演習課題「掛け算を計算する関数を計算しよう」
右のコードでは、multiply 関数を呼び出していますが、関数の処理が記述されていません。
x と y の 2 つの引数を掛け算した結果を返すように、関数を修正してください。
プログラムを実行して、正しく表示されれば演習課題クリアです!
期待する出力値
12
35
408
演習課題「九九の表を作成してみよう」
右のコードは、九九の表を出力するプログラムです。
このプログラムは未完成です。
コードを追加して、九九を 1 の段から 9 の段まで出力してください。
プログラムを実行して、正しく表示されれば演習課題クリアです!
期待する出力値
1, 2, 3, 4, 5, 6, 7, 8, 9
2, 4, 6, 8, 10, 12, 14, 16, 18
3, 6, 9, 12, 15, 18, 21, 24, 27
4, 8, 12, 16, 20, 24, 28, 32, 36
5, 10, 15, 20, 25, 30, 35, 40, 45
6, 12, 18, 24, 30, 36, 42, 48, 54
7, 14, 21, 28, 35, 42, 49, 56, 63
8, 16, 24, 32, 40, 48, 56, 64, 72
9, 18, 27, 36, 45, 54, 63, 72, 81
#03:引数と戻り値を理解しよう
関数の引数と戻り値について学習します。
関数に引数を追加するには、関数定義の引数のところで、「int x」のようにデータ型と変数名を記述します。
・引数が 1 つの関数#include <stdio.h>
void sum(int x)
{
printf("%d\n", x + 20);
}
int main(void)
{
sum(30);
}
引数が 2 つ以上あるときにはカンマ (,) で区切ります。
・引数が 2 つの引数#include <stdio.h>
void sum(int x, int y)
{
printf("%d\n", x + y);
}
int main(void)
{
sum(3, 2);
}
関数の戻り値は、次のように設定できます。
・関数名の前に、戻り値のデータ型を記述する。
・関数の中で「return ...」で値を返す。
下の sum 関数は int 型の値を返す関数です。#include <stdio.h>
int sum(int x, int y)
{
return x + y;
}
int main(void)
{
int n = sum(300, 200);
printf("nの値 : %d\n", n);
}
※return を実行すると、そこで関数呼び出しが終了するため、それ以降の処理は実行されません。#include <stdio.h>
int one(void)
{
return 1;
printf("この文章は出力されません\n");
}
int main(void)
{
int x = one();
printf("%d\n", x);
}
出力結果:1
main 関数では戻り値を省略できます。#include <stdio.h>
int main(void)
{
printf("Hello paiza\n");
// 戻り値が省略されています
}
戻り値を省略したときには、最後に return 0; を記述しているのと同じように扱われます。
次のように明示的に記述しても問題ありません。#include <stdio.h>
int main(void)
{
printf("Hello paiza\n");
return 0;
}
関数の定義は、原則として main 関数の上に書く必要があります。
main 関数の下に関数定義を書きたい場合には、次のようにプロトタイプ宣言を記述する必要があります。#include <stdio.h>
// プロトタイプ宣言
int sum(int, int);
int main(void)
{
int n = sum(300, 200);
printf("nの値 : %d\n", n);
return 0;
}
int sum(int x, int y)
{
return x + y;
}
プロトタイプ宣言で、変数名を一緒に記述することもできます。
※下記のように、変数名 (a と b) は下の関数定義のもの (x と y) と同じでなくても構いません。#include <stdio.h>
// 変数名を記述したプロトタイプ宣言
int sum(int a, int b);
int main(void)
{
int n = sum(300, 200);
printf("nの値 : %d\n", n);
return 0;
}
int sum(int x, int y)
{
return x + y;
}
- 関数 - IT 専科
http://www.itsenka.com/contents/development/c/function.html
- 関数 - C 言語リファレンス
https://ja.cppreference.com/w/c/language/functions