Also, dass C als das klassische Beispiel einer streng typisierten Sprache die Verwendung einer Variable ohne vorherige Deklaration zulässt, kann ich mir nur schwer vorstellen.
ußerdem sollte man einen Präfix nicht mit der Deklaration verwechseln. Präfixe sind nicht notwendig, aber werden häufig verwendet, damit man überall sofort sieht, welchen Datentyps eine Variable ist. Eine Variable für eine Anzahl würde man z.B. iCount nennen, um kenntlich zu machen, dass es sich um einen int handelt. Das ist zwar nicht erforderlich, aber erleichtert die Programmierung. Speziell ist es hilfreich, um Pointer und Variablen auseinander zu halten, da solche Verwechslungen zu den abenteuerlichsten und oft schwer zu findenden Fehlern führen.
In dem Zusammenhang ist die Bezeichnung "Ungarische Notation" zu erwähnen. Deren eigentlich Sinn war zwar ein anderer (Präfixe sollten die Verwendung der Variable erkennen lassen und nicht den Datentyp), aber sie wird heute oft in dieser abgewandelten Form angewendet.