主题:在else后提示语句错,请问高手,这是什么原因???
caline
[专家分:20] 发布于 2008-11-17 16:22:00
输入一个三位数,要求出个十百数顺序相反的数
if (i>0) and (i<1000) then
begin a:=trunc(i/100);
b:=trunc((i-100*a)/10);
c:=i-a-b;
s:=c*100+b*10+a;
end;
else write('not in law');{意思是想说输入的数不在范围内}
end.
在else后提示语句错,请问高手,这是什么原因???
回复列表 (共18个回复)
11 楼
tzhlryy [专家分:270] 发布于 2009-08-01 09:54:00
else前的语句不能加;
12 楼
chengyongxun [专家分:0] 发布于 2009-08-02 00:19:00
这样似乎好点?
if (i>0) and (i<1000) then
begin
a:=i div 100;
b:=i div 10-10*a;
c:=i mod 10;
s:=c*100+b*10+a;
end
else
write('ILLEGAL');{意思是想说输入的数不在范围内}
end.
13 楼
abcwuhang [专家分:1840] 发布于 2009-08-20 17:07:00
~铺天盖地的分号啊
14 楼
1042144576 [专家分:10] 发布于 2009-08-26 17:33:00
begin a:=trunc(i/100);
b:=trunc((i-100*a)/10);
c:=i-a-b;
s:=c*100+b*10+a;
end;
把end后面的“;”删去
15 楼
chip [专家分:80] 发布于 2010-08-07 22:36:00
else 前的end;改之; end
16 楼
ljmet [专家分:30] 发布于 2010-08-15 12:23:00
else前的end不能加;
17 楼
稀栗哥3 [专家分:30] 发布于 2010-10-04 09:09:00
1楼说的对啊,可能你else前一句家了;(分号)了,也是照样提示出错。
18 楼
JKprogramfan [专家分:0] 发布于 2010-10-15 21:32:00
这是初学者很容易犯的错误,错误就是上面说的第一个END后面不要加‘;’就可以了。
我来回复