for文の中にscanfを書くのと、for分の外にscanfを書くことの違いが分かりません。その違いを教えていただければ幸いです。
int main() { int a,b,c,d; scanf("%d%d%d",&a,&b,&c); for(a;a<b+1;a++) { if(c%a==0)d++; } printf("%d\n",d); return 0; }
int main() { int a,b,c,d; for(a;a<b+1;a++) { scanf("%d%d%d",&a,&b,&c); if(c%a==0)d++; } printf("%d\n",d); return 0; }
上記の違いを教えていただけたら幸いです。
for文の中にscanfを記述すると、forのstepにa++という記述がありますがaの変化は、(1-> 2 -> 2 ->....)となって初期値から+1しか変化しないのかなと思いました。
逆に、for文外にscanfを記述すると、aの変化は(1 -> 2 -> 3 -> 4 -> ....)となると思います。
※a = 1という前提でaの変化を書きました。
> int a,b,c,d;
とりあえず,これらを真っ当に初期化した状態から話を始めた方が,「不定値がどうの」的な本題ではない(?)話が混じりこまなくて良いのではないかと思います.
回答1件
あなたの回答
tips
プレビュー