next up previous contents
Next: 3. 制御構造1 判断 Up: 2. 四則計算 Previous: 2. 結果の表示

3. 課題 2

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

課題 2.1
計算だけでは答えは表示されない

以下のプログラムを実行してみよ。


    /* kadai 2.1 */
    #include <stdio.h>

    main()
    {
        int a;
        a = 87 * 29;
    }

このプログラムは、正常にコンパイル出来、実行も出来るが何も表示しない!

課題 2.2
今度は表示してみる。

課題 2.1 の7行目の後 ( a = 87 * 29;の次の行、} の前 ) 、に以下の 1行を付け加えて実行してみよ。


        printf("%d",a);

結果は 2523 になる筈ですが、表示されましたか? 表示されたら次の問題に進んでください。

課題 2.3
良く分かるように表示しよう。

課題 2.2 で、うまく結果は表示されたと思いますが、これだと 2523 が出るだけで、 しかも 2523 とプロンプトが繋がってしまいます。 ( こういうのは、前回も経験しましたね。) そこで、今度は結果が次のように表示されるように課題 2.2 のプログラムを改良 してください。


    $ a.out
    a = 2523 
    $

うまく行きましたか? a.out を実行した後、a = が表示され、その後ろに結果の 2523 が表示され、更に改行されてないと駄目ですよ。

課題 2.4
変数を使った足し算

以下のプログラムを実行せよ。


/* kadai 2.4 */
#include <stdio.h>

main()
{
        int a, b, c;
        a = 92;
        b = 4;
        c = a + b;
        printf("a = %d\n",a);
        printf("b = %d\n",b);
        printf("a + b = %d\n",c);
}

課題 2.5
引き算、割り算

課題 2.4 のプログラムを改良して、$ a - b $, $ a / b $ も計算して、 表示出来るようにせよ。

課題 2.6
整数同志の割り算の怪

課題 2.5 で、a,b に色々な値を入れて実行してみよ。特に、割り算で割り切れない 場合について実行し、そのプログラムと結果についての考察を creport までメイルで 送りなさい。但し、題名は kadai02 とすること。

ヒント
割算で割り切れない場合にどうなるか、またその理由について 述べなさい(本文中に答があります)。

前回の復習
  1. 実行形式の作り方
  2. プログラムの基本の書き方
    
        /* kadai 2.1 */
        #include <stdio.h>
    
        main()
        {
            ...
        }
    
  3. 画面に表示するには printf
    ex. printf("Nice to meet you!\n");
    "..." の中に書いた \n は、改行の印

  4. 整数変数の宣言
    変数は使用する前に、宣言をして確保しなければならない。
    宣言の例
    
                    ex.1    int a;
                    ex.2    int a; int b;
                    ex.3    int a, b, c;
    
  5. 四則演算      $+ - * /$
    整数同志の四則演算では結果は必ず整数であることに注意する。

  6. 代入     ex. a = 3;

  7. 変数の引用  ex. b = 3 * a;

  8. 結果の表示
    整数変数の値を表示するには、printf 文の "..." の中で %d を用い、続く変数に表示したい変数名を書けば良い。
    
            ex.1         printf("%d",a);
            ex.2         printf("a = %d",a);  
            ex.3         printf("a = %d \n",a);
            
    ex.2 のように文字はそのまま出力される。また、ex.3 のように 改行を指定することも出来る。



Noriyo Kanayama 平成14年11月26日