[C言語]論理式(0 | 1)

#include <stdio.h>
#include <stdlib.h>

int main(void){
	char c[128];
	int a,b,m;

	printf("\n数字を二回入力して論理式を調べます\n");
	printf("aに好きな数字を入力してください。\n");
	printf("a=\n");gets(c);a=atoi(c);
	printf("bに好きな数字を入力してください。\n");
	printf("b=\n");gets(c);b=atoi(c);

	printf("\n aの値は%d, bの値は%d\n\n", a,b);

	m=(a==b);
	printf("論理式 a==b の値は%d\n",m);
	m=(a<b);
	printf("論理式 a<b の値は%d\n",m);
	m=(a>b);
	printf("論理式 a>b の値は%d\n",m);

	

$ ./main

数字を二回入力して論理式を調べます
aに好きな数字を入力してください。
a=
6
bに好きな数字を入力してください。
b=
2

aの値は6, bの値は2

論理式 a==b の値は0
論理式 ab の値は1

m=(a==b)と書いて、正の場合は1, 正しくない場合は0を表示する
true or falseに慣れていると、奇妙な感じがします。