今日のTA

 私のTA人生(2年だけですが)の中で初めての再履修を担当。これで、大学のプログラミング系科目TAは全部制覇したことに。
 
 内容は色々あったのですが、伏せさせていただきます。
 
 ところで、TAをやっていて学生の答えを見ているうちに、ちょっとした問題を思いつきました。レベル的にはプロ演2単位習得程度の問題なのですが、きちんと本質を理解していなければ解けない問題です。ちなみに深夜に一緒に泊まっていたゼミ生3人にこの問題を出したところ、うち二人は単位を取得しているにも関わらず答えられませんでした。うちのサークルの3回以上ならば、全員が正解してもらいたい問題です。答えはコメントに書いてくれても構いませんし、自身のBlogにて答えを書いた後トラックバックを飛ばしてくれても構いません。

問題 


#include
 
(中略)
  int a=10000;
scanf("%d",a);
return 0;
}

 さて、このプログラム……どこが間違っているでしょう?……というのは、さすがにC言語やってれば誰でも分かります。うちのゼミ生も入門ではSAをやっているので、さすがにどこが違うかぐらいは指摘できました。しかし、それでは入門レベル。
 
 このプログラム、警告は出ますがちゃんとコンパイルは通ります。どんな警告が出るかはやってみれば分かると思います。実行ファイルがちゃんとできるので実行すると、中ではどのようなことが起こるでしょうか、というのが問題です。
 
 不正終了、セグメントエラー(まあ普通起こりますが)などが起こらないと仮定して、答えてみてください。
 サイズが気になったら細かいことは気にせず32bitだということにしてください。