exit 用法 pascal

vars,st:string;a:array[1..26]ofstring;c:array[1..26]ofboolean;ans,e,g,i,k,x,n:longint... var
s,st:string;
a:array[1..26]of string;
c:array[1..26]of boolean;
ans,e,g,i,k,x,n:longint;

procedure del(var ss:string); //删除空格
begin
while pos(' ',ss)<>0 do delete(ss,pos(' ',ss),1);
end;

function f(l,r:longint):longint;
var
kh,fh,i:longint;
begin
if l>r then exit;
kh:=0;
fh:=0;
for i:=r downto l do
begin
if st[i]=')' then inc(kh) else
if st[i]='(' then dec(kh);
if kh=0 then
begin
if (st[i]in['+','-']) then begin fh:=i; break;end else
if (st[i]='*')and((fh=0)or(st[fh]in['*','^'])) then fh:=i else
if (st[i]='^')and(fh=0)then fh:=i;
end;
end;
if fh=0 then
begin
if (st[l]='(')and(st[r]=')') then exit(f(l+1,r-1)); // exit(f(...)) 这个用法啥子意思 就是exit 后面加个函数是啥子意思
if (st[r]=')')then exit(f(l,r-1));
if (st[l]='(')then exit(f(l+1,r));
if st[l]='a' then exit(x);
f:=0;
for i:=l to r do f:=f*10+ord(st[i])-ord('0');
end
else
begin
case st[fh]of
'+':exit((f(l,fh-1)+f(fh+1,r))mod 35111);
'-':exit((f(l,fh-1)-f(fh+1,r)+35111)mod 35111);
'*':exit((f(l,fh-1)*f(fh+1,r))mod 35111);
'^':begin
f:=1;
e:=f(l,fh-1);g:=f(fh+1,r);
for i:=1 to g do f:=f*e mod 35111;
end;
end;
end;
end;
展开
 我来答
A孤独求败A
推荐于2017-09-21 · TA获得超过464个赞
知道小有建树答主
回答量:147
采纳率:0%
帮助的人:110万
展开全部
exit 是退出当前程序块。即在任何子程序中执行 exit , 那么将退出这个子程序。如果是在主程序中执行 exit,那么将退出整个程序。
相当于 goto 这个程序块的末尾的 end 。
例如:试除法判断素数时,一旦整除,就把函数值赋为false ,然后exit。
注意:类似上面,exit 也是只对当前这一个子程序产生作用,如果多重嵌套子程序,那么其中某个子程序执行了exit 以后,将返回到调用它的那个语句的下一个语句。

例如:
function f(x:longint):longint;
var
begin
if ... then exit(f(x+1)); <--这里指f:=f(x+1);把f(x+1)当作答案退出.
...
end;

你那个程序中的exit(f(l+1,r-1))中的f(l+1,r-1)是你那个函数.

懂不懂?不懂问我
Sigma-Aldrich
2018-06-11 广告
Duolink PLA技术可通过同一个实验即可完成对蛋白质互作及其修饰的检测、定量以及确定细胞定位等。Duolink基于原位PLA技术(即邻位连接分析技术),可以帮助您在内源蛋白质表达过程中进行该分析。... 点击进入详情页
本回答由Sigma-Aldrich提供
百度网友a39fb3e
推荐于2017-09-21 · TA获得超过4466个赞
知道小有建树答主
回答量:477
采纳率:100%
帮助的人:68.1万
展开全部

在Pascal中,exit可用在自定义函数中或主程序中,以下为详细说明:

  1. 自定义函数中的exit:

    在自定义函数中,exit的作用是返回函数的值,如下代码:

    var a:longint;

    function f(a:longint):longint;

    begin

      exit(a+2)  //返回函数的值a+2

    end;

    begin

      readln(a);

      writeln(f(a));  //调用函数f()

    end.

    样例输入:

    10

    输出:

    12

    在自定义函数f()中,利用exit来返回该函数的值a+2。

  2. 主程序中的exit:

    在主程序中,exit的作用是结束程序,如下代码:

    var a:longint;

    begin

      readln(a);

      writeln(a+1);

      exit;

      writeln(a+2);

    end.

    样例输入:

    10

    输出:

    11

    在输出时没有输出12,即没有运行writeln(a+2);这一语句,因为当程序运行到exit语句时,就直接结束了程序,exit后面的代码不会执行。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
宋昊霖
2009-01-31
知道答主
回答量:19
采纳率:0%
帮助的人:0
展开全部
先运行括号里的程序,当此程序运行完后退出其所在子程序!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bboobbbbyy
2009-01-30 · TA获得超过901个赞
知道小有建树答主
回答量:203
采纳率:0%
帮助的人:0
展开全部
exit本事是在函数里的,exit的意思是跳出函数
详见
http://hi.baidu.com/417708534/blog/item/159f8294525d6218d31b7022.html
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式