In your case it is pointless.
The use od declared variables comes in place where you need then and you can't use them unless they are declared: <-- this is the rule (EDIT: this applays to s.p. local variables)
one more example(suppose you have to do many slects using same date in condition):
DECLARE the_int_variable int DEFAULT 0;
Select max (fileld) into the_int_variable from table;
/*you can use that in further selects, stored proc cursor loops, conditions,....*/
You can assign new value to variable at any time, default is there so you are able to check if it has changed during stored proc run.
DECLARE d DATETIME;
select max (datefield) into d from table;
select * from tab1 where datefield = d;
select * from tab2 where datefield = d;
select * from tab3 where datefield = d;
/*get it ? You are saving db resources here, not calling for date for condition each time*/