&&と||によるifを使わない条件分岐、シェルスクリプトではよく見るけど、C言語でやられるとちょっと戸惑う。でも英語だと、"and"と"or"を「ならば」「さもなくば」の意味で使うし、あんがい自然な表現なのかもしれない。(いや、C言語ではこんなトリッキーな書き方すべきでないと思うけど)
#include <stdio.h> bool isEven(int x) { return (x%2==0) ? true : false; } int main(void) { for(int i=0;i<10;i++){ isEven(i) && printf("%d is even.\n", i); isEven(i) || printf("%d is odd.\n", i); } return 0; }