发布网友 发布时间:2024-10-22 19:45
共3个回答
热心网友 时间:2025-01-18 09:52
题目里说的是可以加+,-而不是一定要加
所以当输入没有带正号的时候就不执行任何一个if()中的语句。
修改:
读完st1,st2之后加上
if not (st1[1] in ['+','-']) then st1:='+'+st1;
if not (st2[1] in ['+','-']) then st2:='+'+st2;
还有,你的minus过程有错误 :
如果是算9-900,你的结果是-999,而正确结果是-1
if c[l+1]<0 then write('-');这一句:说明你算的是[1st1]-[st2] ([1st1]表示字符串前加上1)
所以你应该修改:
if c[l+1]>0 then begin
write('-');
minus(st2,st1);
exit;
end;
热心网友 时间:2025-01-18 09:57
飘过。
热心网友 时间:2025-01-18 09:51
运行时有一个框,看上面,蓝色的数字,十几,就再按下空格,它会显示哪里错了,自己改吧!