下面的结果为什么是0 4 12求详解

function fout=test(a,b,c)
if nargin==1
fout=2a;
elseif nargin==2
fout=2
(a+b);
elseif nargin==3
fout=2*(a.*b.*c);
end
在命令行窗口调用test函数的结果为( )。

test(1:3,[-1,0,3])

因为test(1:3,[-1,0,3])里面有2个输入变量 ,所以函数里面就有nargin(输入变量个数)等于2,所以就执行fout = 2*(a+b)
所以就是fout = 2*([1,2,3]+[-1,0,3])也就是fout = [0 4 12]