関数を呼ぶ側から見たとき、関数に渡すパラメータを引数と言います。
呼ばれた側では、関数に渡されたパラメータのコピーを受け取ります。これを引数といいます。

変数は、関数とかそういうの関係無しに、データを格納しておく場所に名前を付けたもののことを言います。
データには様々な種類がありますが、たとえば

int a;

なら、 a はint型のデータを格納する変数。

int *pa;
なら、paはint型を指すポインタを格納する変数。

ということになります。

関数引数は、基本的に、すべて変数で受け取ります。

int func(int a, int b);

の場合、
第一引数を a という int を格納する変数で受け取ります。
第二引数を b という int を格納する変数で受け取ります。

このほかに可変長引数というのがありますが、
貴様にはまだ早いので割愛させていただきます。