c語言無限循環
㈠ c語言怎麼無限循環子程序
#include<stdio.h>
#include<stdlib.h>
intmain(void)
{
while(!kbhit())//kbhit:檢測輸入緩沖區是否有數據,有返回非零值,無返回0.
{
...
}
getchar();//kbhit只是檢測,但不吸收這個任意鍵.若程序後面還有要輸入的地方,這里必須寫一個getchar(不能是getch)
return0;
}
㈡ while(1)在C語言里是不是無限循環
int
k=0;
while(k=1)
k++;
(k=1)是用來判斷的條件它的返回值只有真和假,而k=1賦值語句的所回值為真,所以while循環條件一直為真,是個死循環,次數無限!
㈢ C語言無限循環1輸出怎麼編寫。
1、while(1)即可。
2、while循環的用法是
while(判斷條件)
如果判斷條件為真,則實行循環內部代碼;
如果判斷條件為假,則跳出循環,執行後續代碼。
而判斷條件為真的時候,值是1;判斷條件為假的時候,值是0
故而,while 1是無限循環
㈣ C語言正確C表達無限循環
5 A正確。 其它的都是錯的。
B 沒有AND這個運算。
C 相當於用x>=y的結果 與z比較。
D &為位運算,這里是邏輯運算。
6 A 改變的是y值,而x一直為1, 死循環。
B 沒有退出條件 死循環
C 這里x+=i i未知,但不影響結果。
因為第一次判斷x>++y 的時候 y先自加為1, x>y不成立,直接退出。
所以這個不是死循環
Dwhile條件x=1為賦值,所以x恆為1,死循環
選C
㈤ C語言問題求救無限循環
代碼太亂。沒太怎麼看。你定義的結構體中的quit有問題。
unsigned char quit; //退出
不應該用char吧。你這樣子就算輸入0。那麼ascii碼對應的值是48
必然結束不了。
你改成int試試。
或者在讀入New->quit時改一下,你這里用的是
scanf("%c",&New->quit);
改成
scanf("%d",&New->quit);
如果有什麼問題可以加我網路HI。
樓上說的有問題。scanf就算不處理回車符也是一樣的。因為後續都是用scanf來完成輸入的。除非有getchar這類的讀取字元。才需要處理換行符之類的
㈥ C語言 for無限循環
for循環第二個分號前放的是循環條件,它的值是一個邏輯型,你不論k=1還是k==1最後看的是這條語句是為0還是為1;
㈦ 我的C語言有問題嗎總是無限循環中
題主的代碼是 一個for循環內有兩個for循環。
外層for循環的循環條件為n<2,而在內層第二個for循環卻又將n置為0,出內層第二個for循環循環後,n的值為0,再n=n+1 ,n 的值為1,符合外層for循環的條件。
這就是死循環的原因,在循環內改變了判斷循環條件的變數的值。
㈧ c語言 如何跳出for無限循環
你問題有毛病,你這里有break,所以你的程序本來就有跳出循環功能。
還有 按你說的,你想什麼時候 跳出 這個循環?如果只執行一次就跳出循環的話for里 直接寫個break就能跳出來了!
你還是改改你的問題,while(scanf("%d",&n)!=EOF)會用嗎
㈨ C語言,while出現無限循環。
在c語言的世界裡除了0是false,其他的都是ture。
while(1){ } 語句判斷條件是死循環是沒錯,但也並非一定是死循環,也有可能運行到某個時刻就跳出while循環了。
比如 while(1)裡面運行到了break,或者return,那麼就會終止當前的while語句,結束循環。上面說的中斷,只是一時跳出while語句,執行其他語句,執行完以後仍然會返回while(1)繼續循環。
(9)c語言無限循環擴展閱讀:
語法
Pascal
while <條件> do <語句>
意為當條件符合時,接著做下面的語句;不符合時,退出循環。
C語言
do <語句> while(<條件>);
while(<條件>) <語句>;
C++
while(<條件>) <語句>;
do <語句> while(<條件>);
Java
while(<條件>) {<語句;>}
do {<語句;>} while(<條件>);
二者的區別是do-while最少會被執行一次。
循環中可以使用continue結束當前循環,回到循環開始處開始下一次循環。也可以用break跳出整個循環。
㈩ C語言裡面怎樣使一個程序一直循環運行
最簡單的方法有兩種:
1. while(1) //數字1,不是字母l
{
//你循環的的程序代碼
}
2.for(;;) //括弧中是兩個分號
{
//你循環的的程序代碼
}
比如想一直循環輸出HELLO
完整代碼為:
#include <stdio.h>
void mian()
{
while(1)
{
printf("HELLO");
}
}