Previous: 関数の終了
Up: 関数を作る I
Next: 復習
Previous Page: 関数の終了
Next Page: 復習

関数の返り値

 関数の返り値は、関数の定義で型宣言をつけなければ、必ず整数とみなされ、 返り値を返したいときは、return 命令の後に式を書けばよい。

関数の返り値    return 式;

例
    plus( int a, int b){
        return a+b;
    }

 この関数 plus は、引数に2個の整数をとり、足し算の結果を返す。

例
    chartoint( char a ){
        int ca;
        ca = a;
        return ca;
    }

この例は、文字型を引数にとり、その文字の整数での値を返す。

課題12

cd c を実行した後で( /c に移動した後で)、以下の課題を やってみよ。

課題 12.1
エラー処理をもった整数の入力関数を作る。

第5章で学んだエラー処理を伴った整数の入力関数を作ってみよう。 仕様は、引数なし、返り値は入力された1個の整数で、整数以外の入力が あれば入力が間違っている事を表示して 0 を返すものとする。 関数名は、InputWithError() とする。

#include <stdio.h>
    InputWithError(){
        ...
    }

main() { int input;

input = InputWithError(); if (input != 0){ printf("入力されたのは、%d です。\n", input); } }

課題 12.2
複利計算の関数を作る。

課題 5.3 の複利計算プログラムを関数を使ったプログラムに改造せよ。

関数の仕様は以下のようにせよ。

hukuri( int yokin, float kinri, int kaisuu){
        ...
    }
yokin は、最初の預金金額、kinri は4%の金利ならば、0.04 を 渡す。kaisuu はその金利で何回複利計算をするかを指定する。例えば、 年利4%で、10年預けるなら、kaisuu は10を代入する。 関数 hukuri の返り値は、元金+金利の総計である。

課題 12.3
ゲームの表示関数を作る。

課題 11.4 のプログラムで、敵機の距離を表示する部分を次のように表示する ように関数を用いて改造する。

distance |---E------Y|    E:enemy , Y: yours

敵機が上の図より一つ進むと次のようになる。

distance |----E-----Y|    E:enemy , Y: yours

関数の仕様は、引数は、全体のコースの長さ(今の場合は、11 で固定)、 敵機との距離、敵機を表す文字で、返り値はなし、 関数名は、Display とする。

#include <stdio.h>

Display( int courselength, int distance, char enemy){ ... }

main(){ ... }

プレイしてみて、問題がないかどうか確かめよ。

作成したプログラムをメイルで、 金山まで送ること。但し、題は kadai12 とすること。

maruyama@wakhok.ac.jp
1995年02月08日 (水) 18時57分57秒 JST