プログラム初心者です。よろしくおねがいします。
現在、6つのC言語プログラム(main.c, sub1.c, sub2.c, a.c, b.c, c.c)を作成し、画像のような関係でインクルードして使いたいと思っています。

ですが、main.cをコンパイルしたところ
'a'の宣言が複数見つかった
ひとつ前の'a'の定義位置
'a'の宣言が複数見つかった
ひとつ前の'a'の定義位置
'c'の宣言が複数見つかった
ひとつ前の'c'の定義位置
というエラーが表示されました。
a.cは3回、c.cは2回インクルードしているので、このようなエラーが表示されたのだと予想できましたが、どうしたら解決できるのか、自分なりに調べてみてもわからなかったので質問させていただきます。
OSはwindows7
コンパイラはBorland C++ Compiler 5.5
です。
どうしたらエラーを解決できるでしょうか。
どなたか詳しい方がおられましたら、ご教示お願いいたします。