Jeff's described the concept pretty well. Many programmers (not just Lispers) use the two words interchangeably, since the idea behind both are pretty much the same thing.
Strictly speaking, it's as Jeff indicated: Parameter=definition of input / output variable to a function/procedure/method. Argument=runtime data sent to the function/procedure/method, or if you language allows by-reference parameters it could also include output variables.
Even in C# I see lots of examples calling the Result Buffer parameter when creating a LispFunction by the name of args. In most console programs (even made in C) the command line options are called arguments inside the code. Sometimes you might find a programmer called such thing params instead, but they both mean much the same thing. So it seems there's no strict adherence to the above definitions, it's more like splitting hairs actually.
The issue with your code however (as Tharwat's indicated) is you're passing the wrong pattern of arguments to the print function. The print function's definition states it receives one data parameter (which could be anything) and one optional destination parameter (usually a file handle - else output to command line). Some languages define their equivalents to print to accept multiple data parameters (e.g. Pascal's
write/writeln allows multiple arguments, but also has an overloaded version accepting an output file as the first argument). So your code fails because of AutoLisp's definition of the print function, in some other languages you wouldn't need to combine several data variables into one to send to print as a single arg.