我想在某些Pascal代码中使用CRT单元,仅用于“clrscr”函数,但它会导致问题。代码编译得很好,但是一些文本不合适,符号出现在它们不应该的地方。
以下是代码:
program fuel(input, output);
var
i,vnumber:integer;
f,f2:text;
volfuel,dist,totalfuel,totaldist:double;
ch:char;
s,z:string;
begin
assign(f,'fuel.txt');
assign(f2,'report.txt');
{$i-}
reset(f);
rewrite(f2);
{$i+}
if ioresult<>0 then halt;
totalfuel:=0;
totaldist:=0;
s:='~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~';
writeln(s);
writeln(f2,s);
z:='Vehicle No.'+#9+'Fuel Consumption (MPG)';
writeln(z);
writeln(f2,z);
writeln(s);
writeln(f2,s);
while not eof(f) do
begin
read(f,vnumber);
read(f,ch);
read(f,volfuel);
read(f,ch);
read(f,dist);
readln(f);
totalfuel:=totalfuel+volfuel;
totaldist:=totaldist+dist;
writeln(vnumber,#9,(dist/volfuel):15:2);
writeln(f2,vnumber,#9,(dist/volfuel):15:2);
end;
writeln(s);
writeln(f2,s);
z:='~~~~~~~~~~~~~~~~~~~~SUMMARY~~~~~~~~~~~~~~~~~~~~~~~~';
writeln(z);
writeln(f2,z);
writeln(s);
writeln(f2,s);
writeln('Total Gallons = ',totalfuel:10:2);
writeln(f2,'Total Gallons = ',totalfuel:10:2);
writeln('Mean Petrol Consumption = ',totaldist/totalfuel:10:2);
writeln(f2,'Mean Petrol Consumption = ',totaldist/totalfuel:10:2);
close(f);
close(f2);
readln;
end.
一旦我添加“使用crt;”那是我遇到问题的时候。它不仅仅发生在这个Pascal程序中,我很少做,然后想添加“clrscr”或某种颜色,我不能像添加CRT那样,它会导致间距/格式化问题。
任何帮助都会很棒!
答案 0 :(得分:0)
如果您的操作系统是Windows,则可能是标签(#9)用法。 Crt接管I / O并可能解释它们。但Windows上的Crt通常应该可以正常工作。详细解释你的问题。