練習問題11
基本知識
問 1-1
プログラムの先頭で関数の形を宣言しておくことをなんと呼ぶか。
問 1-2
関数に数値を渡すために宣言する変数のことをなんと呼ぶか。
問 1-3
関数に渡す数値や変数のことをなんと呼ぶか。
問 1-4
関数から返す数値のことをなんと呼ぶか。
プログラム読取
次のプログラムでは、関数triは何のための関数なのか。
処理内容や変数名から判断して答えよ。
処理内容や変数名から判断して答えよ。
問 2-1
#include <stdio.h>
int tri(int, int);
int main(void)
{
int side, high, square;
scanf("%d,%d", &side, &high);
printf("%d\n", tri(side, high));
return 0;
}
int tri(int side, int high)
{
return side * high / 2;
}
プログラム書取
問 3-1
西暦年を入力するとオリンピックが開かれるか表示するプログラムを作成せよ。
ただし、オリンピックの開催を計算する部分は別の関数として作成せよ。
※2000年に夏の大会が開かれ、その後は2年ごと 冬->夏->冬->夏 の順に開かれるとする。
また、この予定は永遠に狂わないこととします。
ただし、オリンピックの開催を計算する部分は別の関数として作成せよ。
※2000年に夏の大会が開かれ、その後は2年ごと 冬->夏->冬->夏 の順に開かれるとする。
また、この予定は永遠に狂わないこととします。
記述式
問 4-1
関数を作るのは何のためか、簡潔に説明せよ。
基本知識(解答例)
解 1-1
プロトタイプ宣言
解 1-2
仮引数
解 1-3
実引数
解 1-4
戻り値
プログラム読取(解答例)
解 2-1
三角形の面積を計算する関数
プログラム書取(解答例)
解 3-1
#include <stdio.h>
int olympic(int year);
int main(void)
{
int year, hold;
scanf("%d", &year);
hold = olympic(year);
switch (hold) {
case 0:
printf("開かれない\n");
break;
case 1:
printf("夏季五輪\n");
break;
case 2:
printf("冬季五輪\n");
break;
};
return 0;
}
int olympic(int year)
{
if (year % 2 == 0) {
if (year % 4 == 0) {
return 1;
} else {
return 2;
}
} else {
return 0;
}
}
※olympic関数の戻り値を開催に対応づけている。
※プロトタイプ宣言を忘れやすいので注意。
記述式(解答例)
解 4-1
機能別に関数を作り、それを組み合わせることでプログラム全体が完成し、
大きなプログラムでも作りやすくなるため。
大きなプログラムでも作りやすくなるため。
本サイトについて
苦しんで覚えるC言語(苦C)はC言語入門サイトの決定版です。
C言語の基本機能を体系立てて解説しており、
市販書籍と同等以上の完成度です。




