A strongly-typed programming language is one in which each type of data (such as integer, character, hexadecimal, packed decimal, and so forth) is predefined as part of the programming language and all constants or variables defined for a given program must be described with one of the data types.
An advantage of strong data typing is that it imposes a rigorous set of rules on a programmer and thus guarantees a certain consistency of results. A disadvantage is that it prevents the programmer from inventing a data type not anticipated by the developers of the programming language and it limits how "creative" one can be in using a given data type.
So for a strongly-type language you can be garunteed that a variable will always have the same type of information, a variable declared as int, will always contain a number. For weak languages declaration doesn't require you to specify the data type, as the language adjusts the data type as needed. Examples:
int num = 7;
float pi = 3.14;
char letter = 'a';
var num = 7;
var pi = 3.14;
var person = "John Doe";