回 帖 发 新 帖 刷新版面

主题:wrong?

求m!+n!

var a,r,s,m,n,i,j:integer;
begin
s:=1;
readln(m,n);
for i:=1 to m do
    s:=s*i;
for j:=1 to n do
    r:=r*j;
a:=s+r;
writeln('result:' , a);
end.

有什么错?

回复列表 (共12个回复)

沙发

r 没有初始化值!

板凳

OK!
right.

3 楼

没有m,n 确定为整形

4 楼

细心点就会有意想不到的收获!

5 楼

注意,你的变量都是整形,如果m,n过大就会溢出

6 楼

第 3 楼   的,不明白……
 第 5 楼   的,这我知道。

7 楼

我编程序习惯于把所有的初始化都放在一个过程里,这样比较不会忘,不知道这样好不好

8 楼

如果m,n很大怎办!他们的和应该定位长整形

9 楼

废话

10 楼

longint

我来回复

您尚未登录,请登录后再回复。点此登录或注册