数学的には正しくても、数学言語ではないC言語では正しくないと言うことです。
まず、=は等しいではありません代入です。これが第一に理解すべきことです。
それと右辺と左辺で役割が決まっています。右辺の計算結果が左辺に代入されます。
なので、1000c+100d+10e+f=b;は大きく間違っています。
それとscanf("%d",&b);はbにしか値を入れていないので、c,d,e,fの値は不定です。
それと
0<=c&&c<=9;
0<=d&&d<=9;
0<=e&&e<=9;
0<=f&&f<=9;
条件式を書いただけでは何も起きません。
これは条件を計算しているだけで、何処にも代入してませんしifやwhileなど条件分岐・ループをなどを使っていないからです。
最後に
printf("%d",c+d+e+f);
はもっと意味不明です。
でも、[1000 桁以下の整数です。]って問題は、実は1000の位だと思っているのが勘違いかもしれないと私は疑っています。
[補足] 同じ様な問題を見たことがあって、それは本当に1000桁でした。1000の位じゃないですよ。たぶん、AOJの問題
[補足の補足] もしAOJの問題なら、まだ早すぎますとしか言えません。
「課題一覧 - アナステイシア」 ここの問題解けますか?
http://anastasia.dip.jp/index.php?url=t ... =kadailist