>> Why the C lang behaves like that:>> We need to delare variable in advance, in contrast to other>> lang, the program simply use without declaring it.>> Most modern languages require variables (as well as other objects) to> be declared before use. ...

Have you looked at modern functional languages like Ocaml and Haskell?
Almost all types are inferred rather than statically declared.