Industry Presence: Over the last decade C has become one of the most widely used development languages in the software industry. Its importance is not entirely derived from its use as a primary development language but also because of its use as an interface language to some of the newer “visual” languages and of course because of its relationship with C++.
Middle Level: Being a Middle level language it combines elements of high level languages with the functionality of assembly language. C supports data types and operations on data types in much the same way as higher level languages as well as allowing direct manipulation of bits, bytes, words and addresses as is possible with low level languages.
Portability: With the availability of compilers for almost all operating systems and hardware platforms it is easy to write code on one system which can be easily ported to another as long as a few simple guidelines are followed.
Flexibility: Supporting its position as the mainstream development language C can be interfaced readily to other programming languages.
Malleable: C, unlike some other languages, offers little restriction to the programmer with regard to data types — one type may be coerced to another type as the situation dictates. However this feature can lead to sloppy coding unless the programme is fully aware of what rules are being bent and why.
Speed: The availability of various optimising compilers allow extremely efficient code to be generated automatically.