pascal中的这程序为什么会是死循环?
程序是:programa9;vari:integer;beginfori:=1to5dobegini:=i+1;writeln(i:8);readln;end;end.按...
程序是:
program a9;
var i:integer;
begin
for i:=1 to 5 do
begin
i:=i+1;
writeln(i:8);
readln;
end;
end.
按理论来说i的值到5就应该停了,但实际不是,它一直从2开始加2,一直加下去,它为什么没有停?为什么它会是死循环?请热心人帮我回答,谢谢! 展开
program a9;
var i:integer;
begin
for i:=1 to 5 do
begin
i:=i+1;
writeln(i:8);
readln;
end;
end.
按理论来说i的值到5就应该停了,但实际不是,它一直从2开始加2,一直加下去,它为什么没有停?为什么它会是死循环?请热心人帮我回答,谢谢! 展开
8个回答
展开全部
在for循环中,对循环量进行赋值从编译语法上是通过的
但是实际操作就会出现系统冲突(溢出)
导致循环体不稳定或崩溃,形成死循环
但是实际操作就会出现系统冲突(溢出)
导致循环体不稳定或崩溃,形成死循环
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
for循环中循环变量i的值在循环语句中不能再次改变,
每次循环它会自动增加1
for i:=1 to 5 do
begin
i:=i+1;
writeln(i:8);
readln;
end;
一般这样做编译通不过
但是有时Pascal不稳定,编译可能会通过,但是程序运行会有问题
每次循环它会自动增加1
for i:=1 to 5 do
begin
i:=i+1;
writeln(i:8);
readln;
end;
一般这样做编译通不过
但是有时Pascal不稳定,编译可能会通过,但是程序运行会有问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
pascal语言结构严谨,有简洁的语法,结构化的程序结构。Pascal是最早出现的结构化编程语言,具有丰富的数据类型和简洁灵活的操作语句,适于描述数值和非数值的问题。所以,Pascal语言可以被方便地用于描述各种算法与数据结构。尤其是对于程序设计的初学者,Pascal语言有益于培养良好的程序设计风格和习惯,所以竞赛提倡使用.pascal确实不适合现在的程序,但竞赛不是编写软件,而是考算法,编程能力.而且pascal容易学,有利于培养学生的能力
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
LZ用的是TP吧
FP当中在FOR循环里改变循环变量的值会自动报错的。
TP里只有I=5才会跳出、当然会报错了
FP当中在FOR循环里改变循环变量的值会自动报错的。
TP里只有I=5才会跳出、当然会报错了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
因为在for循环中出现了“i:=i+1”
会和循环本身冲突,也就S了...
不知道我这样说你能不能懂,反正你就记着不能这么写
会和循环本身冲突,也就S了...
不知道我这样说你能不能懂,反正你就记着不能这么写
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询