26章 簡略記法

http://www.geocities.jp/ky_webid/c/026.html

書き方のテクニック的な内容のお話ですね。

色々と興味深い記述方法があって楽しいです。

問題1

次のプログラムをできるだけ短く書き直して下さい。

int main(void){
    int num1 = 10;
    int num2 = 20;
    int num3 = 30;
    
    num1 = num3;
    num2 = num3;

    return 0;
}

こういうパズル的な遊びは好きです。

おもいっきり短くしてやるぞー!

int main(void){
    int num1=10,num2=20,num3=30;
    num1=num2=num3;
    return 0;
}

どうだ!

答え合わせ

あってました。

ただやっぱり改行や空白まで消してしまうのは読みにくくなるのでやっちゃいけませんね。次からは自重します。

問題2

次のプログラムを?演算子を使って書き直して下さい。

if( num < 100 )
{
    printf( "100未満\n" );
}
else
{
    printf( "100以上\n" );
}

これは簡単ですね。

printf( "100%s\n", (num < 100) ? "未満" : "以上" );

問題3

次のプログラムを複合代入演算子を使って書き直して下さい。

num = num - 10;
num2 = num2 + (num * 4);
num3 = num3 % (num2 - 5);

やってみましょう

num -= 10;
num2 += num * 4;
num3 %= num2 - 5;

簡単ですね。