pascal中的這程式為什麼會是死迴圈

2022-05-22 15:20:03 字數 1969 閱讀 2860

1樓:匿名使用者

在for迴圈中,對迴圈量進行賦值從編譯語法上是通過的

但是實際操作就會出現系統衝突(溢位)

導致迴圈體不穩定或崩潰,形成死迴圈

2樓:匿名使用者

for迴圈中迴圈變數i的值在迴圈語句中不能再次改變,每次迴圈它會自動增加1

for i:=1 to 5 do

begin

i:=i+1;

writeln(i:8);

readln;

end;

一般這樣做編譯通不過

但是有時pascal不穩定,編譯可能會通過,但是程式執行會有問題

3樓:匿名使用者

pascal語言結構嚴謹,有簡潔的語法,結構化的程式結構。pascal是最早出現的結構化程式設計語言,具有豐富的資料型別和簡潔靈活的操作語句,適於描述數值和非數值的問題。所以,pascal語言可以被方便地用於描述各種演算法與資料結構。

尤其是對於程式設計的初學者,pascal語言有益於培養良好的程式設計風格和習慣,所以競賽提倡使用.pascal確實不適合現在的程式,但競賽不是編寫軟體,而是考演算法,程式設計能力.而且pascal容易學,有利於培養學生的能力

4樓:匿名使用者

lz用的是tp吧

fp當中在for迴圈裡改變迴圈變數的值會自動報錯的。

tp裡只有i=5才會跳出、當然會報錯了

5樓:匿名使用者

迴圈中不能改變迴圈量的值

改一下program a9;

var i:integer;

begin

for i:=1 to 5 do

begin

writeln(i:8);

readln;

end;

end.

6樓:hawk_老胡

迴圈中不能改變迴圈量的值

7樓:匿名使用者

中途不要改變迴圈變數的值

pascal當程式進入了死迴圈應當按什麼意思鍵終止

8樓:起個好聽1名字

直接關掉,如果你進入了全屏,那麼閒alt+enter退出全屏,然後按右上角的紅叉號強制退出就行了。 ctrl c 無法退出的死迴圈只有這一種退出方案。

pascal裡死迴圈怎麼辦?編譯器能判斷出來嗎?

9樓:匿名使用者

按pause break鍵

不行的話再亂按一通。。總歸能退出來。。

編譯器貌似不能判斷的說。。

10樓:匿名使用者

不論什麼語言

屬於邏輯錯誤的目前市面上的常用編譯器都不能進行判斷!

除非特定的編譯器.. 不過那也不太現實

..死迴圈只有在執行期間才能表現出來

編譯器如何判斷?

嘿..好像話不能說死了.. 像win系統就能檢測防止死鎖(死鎖與死迴圈在一定程度上是屬於同種型別)

11樓:匿名使用者

明顯不能判斷。

只有自己寫方法。

關於pascal while 死迴圈

12樓:匿名使用者

因為迴圈體為 c:=a+b;

c 永遠等於1,自然就進入死迴圈了。

死迴圈就是一直不停地執行迴圈體。

為什麼程式中的死迴圈會導致100%cpu佔用

13樓:深圳中宇視通科技****

您好 如果在單任務系統中執行,可以用c語言編寫乙個死迴圈,讓cpu使用率一直保持在100%。 例如:while(true); (注:

dos 就是單任務作業系統) 如果在多工系統中執行,則不可能只通過乙個死迴圈就讓cpu使用率一直保持在100%。

這程式是幹什麼的?程式就是軟體嗎?為什麼

n 100 b n 10 c 是判斷是否相等,才是賦值號,將右邊賦給左邊 應為a n 100 b n 100 c n 10 2.所求數不是自己輸進去的,而是通過程式設計電腦得出的 include using namespace std void main void n 1000 a n 100 b ...

c語言程式中輸入字母,要求輸出這字母的ASCII碼值的和,程式不會寫

資料 include stdio.h int main int argc,char argv int s,i char ch printf please enter 3 letters.n for s i 0 i 3 i scanf c ch if ch a ch z ch a ch z s ch ...

電腦為什麼每啟動上網程式會很卡,電腦為什麼每啟動乙個上網程式會很卡?

電腦買來幾年了,是不是太老了,如果剛買來的,重灌一下系統應該會好點 記憶體太小了,增加記憶體就沒事了 那可能是你的cpu出問題啦。先檢查一下,然後在看看的顯示卡。寬頻上網 網慢網絡卡 掉線的原因 1 中病毒了,查殺吧 2 網線接觸不良,讓電信換線了 3 網資源不足,出現不穩定情況 4 灰塵殺手 機器...