Язык Си - руководство для начинающих.

Что такое истина?

     Каждое условное выражение проверяется "истинно" ли оно или ложно. При этом возникает интересный вопрос: Что такое истина?

     Мы можем ответить на этот вечный вопрос по крайней мере так, как он решен в языке Си. Напомним, во-первых, что выражение в Си всегда имеет значение. Это утверждение остается верным даже для условных выражений, как показывает пример, приведенный ниже. В нем определяются значения двух условных выражений, одно из которых оказывается истинным, а второе - ложным.

/* истина и ложь*/

Main( ).

{

    int true, false;

    true = (10 > 2); /* отношение истинно */

    false = (10 = =2); /* отношение ложно */

    printf("true = %d; false = %d\n" , true, false);

}

     В данном примере значения двух условных выражений присваиваются двум переменным. Чтобы не запутать читателя, мы присвоили переменной true значение выражения, которое оказывается истинным, а переменной false - значение выражения, которое оказывается ложным. При выполнении программы получим следующий простой результат:

True = 1; false = 0.

     Вот как! Оказывается, в языке Си значение "истина" - это 1, a "ложь" - 0. Мы можем это легко проверить, выполнив программу, приведенную ниже.

/* проверка истинности */

Main( ).

 {

If(1).

    printf(" 1 соответствует истине.\n" );

Else.

    printf(" 1 не соответствует истине. \n");

If(0).

    printf(" 0 не означает ложь. \n");

Else.

    printf(" 0 означаетложь. \n");

}

     Мы скажем, что 1 должна рассматриваться как истинное утверждение, а 0 - как ложное. Если наше мнение верно, то в первом операторе if должна выполниться первая ветвь (ветвь if, а во втором операторе if - вторая (ветвь else). Попробуйте запустить программу, чтобы узнать, правы ли мы.