用VBA编写计算N!的函数,调用此函数计算1!+2!+…+N!,N的值由输入框输入,结果在消息框输出

如题所述

第1个回答  2016-06-28
sub jsjc()
    x=inputbox("输入一个整数","输入",3)
    sum=0
    for i=1 to 3
        sum=sum+jc(i)
    next i
    msgbox sum
end sub

function jc(n as integer) as double
    cj=1
    for i=1 to n
        cj=cj*i
    next i
    jc=cj
end function

追问

是计算1!+2!+3!+......+N!喔,而且你的代码不对呀

追答

for i=1 to x

那个3是测试用的,怎么不对?哪里不对? jc()就是求阶乘的好不

你所谓的n,不就是我里面你输入的x吗,这不都符号吗,这都不懂,你编程一点也没学吧?

第2个回答  2016-06-28
dim n as integer,i as integer, j as integer,m as long, sum as long
n=val(inputbox(""))
m=1
for i=1 to n
for j=1 to i
m=m*j
next
sum=sum+m
next
msgbox sum追问

可是没有调用N!的函数呀

追答

function fn(byval n as integer) as long
dim i as integer, j as integer,m as long, sum as long
m=1
for i=1 to n
for j=1 to i
m=m*j
next
sum=sum+m
next
fn=sum
end function
--------------------------
调用:
dim n as integer
n=val(inputbox(""))
msgbox fn(n)

本回答被网友采纳