scanfとfor文の組み合わせについて

c

#include <stdio.h> int main() { int n; scanf("%d",&n); for (int i = 0; i < n;i++) { char c; int s; scanf("%c%d",&c,&s); } return 0;}

このコードでnに10を入力すると、for文が5回で終了します。

c

#include <stdio.h> int main() { int n; scanf("%d",&n); for (int i = 0; i < n;i++) { char a; int s; scanf("%d%d",&a,&s); } return 0;}

このコードだと10回実行されます。

1つ目のコードはどうして5回で終了し、2つ目のコードは正確に10回実行されるのでしょうか?
また、1つ目のコードで10回実行するにはどのようにすれば良いですか?

コメントを投稿

0 コメント