You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Lazarus Pascal代码运行异常:命令行窗口执行后立即关闭

问题原因

程序在输出年龄分组结果后,直接执行到end.语句结束运行,命令行窗口会随之关闭,导致你来不及查看输出内容。错误分支里有delay和goto跳转回输入环节,所以不会直接关闭,但正确输入后的分支没有任何暂停或等待逻辑。

解决方案

在程序结束前添加暂停逻辑,让窗口保持打开直到你确认查看完结果。最常用的方式是在case块结束后、end.之前添加readln;语句,等待你按下回车键再结束程序。

修改后的完整代码:

Uses crt;

label durak1;

var      
  yas: Integer;

begin
  durak1:
  CLRSCR;
  write('YASINIZI BELIRTINIZ : '); READLN(yas);

  if (yas <0) or (yas >150 ) then begin 
    writeln('LUTFEN GECERLI BIR YAS ARALIGI GIRINIZ');
    delay(2000); 
    goto durak1;
  end;

  case yas of
    0,1:      writeln('Bebek Yas Grubu'); 
    2..5:     writeln('Cocuk Yas Grubu');
    6..18:    writeln('Genc Yas Grubu'); 
    19..34:   writeln('Orta Yas Grubu');
    35..59:   writeln('Hafif Yasli Grubu');
    60..100:  writeln('Bi Ayagi Cukurda Yas Grubu');
    101..150: writeln('Olmus Yas Grubu');
    else      
      writeln('Yanlis Tuslama');
      delay(10000); 
      goto durak1;
  end;
  // 等待用户按下回车后再结束程序
  readln;
end.

你也可以选择添加delay(5000);(延迟5秒)代替readln;,但readln;更灵活,能让你在看完结果后主动按回车关闭窗口。

内容的提问来源于stack exchange,提问作者Samet Çetin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 07:45:59