裏表(Phinloda のもう裏だか表だか分からないページ)

コンピュータ・プログラミング系の話がメインのそれなりにごちゃごちゃしたネタばかり出てくるサイトです。多分。
<< Yahoo!知恵袋に出ていたC言語の質問への凄い回答 (2) | Top | IME で変換ミスをしたときの後始末が難しい >>
Yahoo!知恵袋に出ていたC言語の質問への凄い回答 (3)

さらに昨日の投稿の続きである。 元となっている質問、回答は「C言語の問題です。 問1から100までの整数の中に3の倍数がいくつあるかを求めるプロ... - Yahoo!知恵袋」をご覧ください。

次の回答者はedomin2004さん。 私の見た感じでは、この人の回答をパッと見た瞬間に、もしかしてプロの方かなと思った。 文句を付けるようなところが殆どなくて、 他の人の回答に対して指摘したような箇所は全部理想的に書いてある。 そして、一番のポイントは、ここ。

#include <stdio.h>

int main(void){

どこ? #include と int main の間にある空白行だ。

というのは、これが無意識に書けないと、まずプロではない。 もしかすると、プロでなくても、プログラムを数年書き続けていれば、 こういう所が意識してなくても勝手に書けるようになるのかもしれない。

もちろん空白行があろうがなかろうが、C言語のプログラムの動作には影響しない。 全く同じ動作になるはずだ。 しかし、プログラムは動作すればいいというものではない。 そこを学校ではよく教えて欲しいと思う。

もっとも、動作しないという論外の状態では、それどころではない。 もちろん、このプログラムは正しい結果を表示する。 ていうか、正しい結果が出るのはこれと次の回答しかないのだが。

最後の回答は凄い。特にメインの処理のあたりが。

int main(void) {
    printf("%d¥n", 100 / 3);

    return 0;
}

ちなみに、結果は正しい。 ただ、問題には「I%3を利用」という条件がある。 ここが満たされてないので、解答としては減点されてしまうかもしれない。 しかし、この回答者さんは故意に書いたんだろうな、多分。

しかし私がびっくりしたのはそこではないのだ。 この人、どうやってインデントしたままの回答を投稿したのだろう?? Yahoo! 知恵袋は連続した空白を勝手に削除するという恐ろしい仕様があるはずなのである。 謎だ。

JUGEMテーマ:コンピュータ
| C言語 | 23:06 | comments(0) | trackbacks(0)
スポンサーサイト
| - | 23:06 | - | -
コメント
コメントする









この記事のトラックバックURL
http://phinloda.jugem.cc/trackback/3175
トラックバック
Powered by "JUGEM"
▲このページの先頭へ
CALENDAR
S M T W T F S
   1234
567891011
12131415161718
19202122232425
2627282930  
<< November 2017 >>
NEW ENTRIES
CATEGORIES
ARCHIVES
NEW COMMENTS
NEW TRACKBACKS
LINKS
PROFILE