11.2 デバッグライトによるデバッグ

  1.プログラム例1:数値判定
 ここでは、簡単なプログラムのデバッグを通して、デバッグライトによるデバッグ手法を学習しましょう。 次のプログラムは、キーボードから整数値を1つ入力し、その値が10かどうかを判定するプログラムです。

#include <stdio.h>

int main(void){
    int value; /* キーボードから入力された数値 */

    printf("Enter number : ");
    scanf("%d", value);

    if(value = 10){        /* 数値が10であるか判定 */
        printf("Input number is 10.\n");
    }
    else {
        printf("Input number is not 10.\n");
    }
}
 このプログラムを実行し、10、23、-4234の数値をそれぞれ入力した場合の結果は次のようになります。
Enter number : 10
Input number is 10.

Enter number : 23
Input number is 10.

Enter number : -4234
Input number is 10.
 この結果から、全ての入力値について、「Input number is 10.」を出力してしまい、明らかに、おかしな動作をしていることがわかります。