Disadvantages of C are:
1. There is no runtime checking.
2. There is no strict type checking (for ex:we can pass an integer value for the floating data type).
3. As the program extends it is very difficult to fix the bugs.
C is a middle level language so it can be used for interaction with the hardware easily, at the same time it can interact with the user...
It uses the POP (Procedure Oriented Programming) approach which is its major disadvantage..
Advantages include its interaction with hardware, easy to learn, code is secure
Compact and efficient. Many people find it rather very difficult to work with.
I do not think C has any disadvantages but others think differently. The correct answer that you need is the answer your teacher wants, ask your teacher or read your text book.
Another answer:
C has been made by real programmers, for real programmes. Just like UNIX. If you think that C (or unix) is not your cup of tea, then most likely you are right -- don't try to force.