質問: よろしくお願いします。c言語を勉強しています。
回答: 初期化はあくまで int a = 100; みたいにしたときであって、後から a = 20; とするのは代入になります。 ですが、"初期値"にこだわらなければ あとから変更することは可能です。 int a = 10; int b = 13; printf( "%d", a + b ); a = 30; としたとき、aの値の変化を見ればいいです。 最初に int a = 10 としています。 なので a には 10 が入っている状態です。 printfの直後で a = 30 としていますから、 a の値が書き換わって a の値は 30になります。 もし a + b の結果も変動させたければ、工夫が必要です。 例えば a = 数字; printf( "%d", a + b ); を毎回やるとか、 ポインタ辺りを使ってやるとか。