1樓:
你可以避開0啊,用其他數字代替。或者while(x==0).
0<100是真。
非0即真。表示式為真也是真,如x=4,y=6,x>y則是假。
2樓:東方不敗
這個很簡單,例如定義一個變數int a;然後判斷當a為0時才進入迴圈如下
while(a==0)
這樣當a為0時就執行迴圈了,因為當a為0時,while()中表示式的邏輯運算結果是真,這個要細心體會的,你這三個問題都可以歸咎為這一點,就是這一點你沒有理解
在c語言中有好多這樣的例子,如5-3>1,邏輯運算結果為「真」即為1;5-3<1,邏輯運算結果為「假」即為0
3樓:匿名使用者
1、定義一個變數:例如i==0的時候迴圈
while(i==0)
2、你沒有理解while的用法,while真,執行;while假,不執行。當a=0的時候,while(a<=100)這個表示式是正確的,等同於while 1,while true,a<=100是真,程式會執行,while 0,0是假,不執行
3、第二個問題已經回答了
4樓:匿名使用者
while(a==0)
a=0時也是小於100啊,所以為真
只要表示式的值不為0,都為真
5樓:匿名使用者
初學者加油。
1、while(0==a)
{}2、a是零的時候,表示式的值仍為真,while只管括號內的部分,不關心a
3、表示式成立即為真
6樓:匿名使用者
1. while(x=0)
c語言while迴圈的問題
7樓:匿名使用者
意思是如果a 為真,則執行while中的迴圈體!
(a)為迴圈條件!但是個死迴圈!因為沒有辦法確定a 的值為真還是為假!
寫個例子吧!
int a=0;
while(a<5)
當a=0時,判斷a<5為真!執行迴圈體!
這個迴圈體共執行5次!即執行5次a++
可以執行一下看看每次都是什麼效果!可能能加深你對迴圈的理解!
希望對你有幫助!
8樓:匿名使用者
while的語法為
while(表示式)
{。。。
}當表示式不為0的時候,則會執行下面語句體裡面的語句直到表示式為0才會停止
while語句一般用在死迴圈裡面
所以常規的用法是while(1)
如果要指定迴圈次數,更多的是用for語句。
9樓:匿名使用者
while迴圈是對while括號後面的表示式進行真假的判斷,,比如你用的a,c語言中有這樣的規定,如果a=0;那麼a 表達的就是假,如果a不為0,那麼他表示的是真,因此,上面的迴圈,只要a不等於0,那麼迴圈就一直進行
剛開始學的時候,我一直以為,只有在等於1的時候才是真,等於2他就不能迴圈了,其實那是錯的,編譯器判斷真假條件的標準是他等不等於0,而不是等不等於1,樓主記住了哦~
還有就是,如果樓主的意願是讓a=0的時候退出迴圈,那麼就可以按照你寫的方法進行,如果樓主的意願是讓a=0的時候才迴圈,那麼有2種寫法
while(!a)
還有就是
while(0==a)
{}建議寫成0== a 的形式,其實0==a,和a==0實質是一樣的,但是如果你講0==a,寫成了0=a,那麼編譯器會報錯,而將 a==0寫成a=0編譯器是不會報錯的,可以減少風險。
祝你進步!!
10樓:
是的但是強烈建議千萬不要這麼寫**
養成良好的變成習慣
一定要使用表示式
也就是while(a != 0)
11樓:匿名使用者
c語言,預設給a的值是個0,0就是假,迴圈一次都不執行,在c中非真就是假
12樓:匿名使用者
是滴,如果沒有明確說明這就是預設狀態為真時執行
13樓:
是的,while(a)
{}當a=0時,跳出迴圈……
14樓:匿名使用者
int a;
while(a);//a不為0死迴圈
15樓:匿名使用者
while(a)等價於(a!=0) 非零為真
16樓:痕之時空
是,不過這樣的話是無限迴圈,不能停的
c語言中while do-while for 的問題
17樓:
第一個是對的。
do-while是先無條件執行迴圈體,然後再判斷迴圈條件是否成立。
但是,for不是先執行迴圈體。for和while相同。
lz主要是for語句實現迴圈沒弄明白。那我好好說明一下:
for的一般形式為:
for(表示式1;表示式2;表示式3)
*舉個例子:
for(i=1;i<=100;i++)
sum = sum + 1;
"i=1"是給的迴圈變數i設定初始值為1,「i<=100」是指定迴圈條件:當迴圈變數i的值小於或等於100時,迴圈繼續執行。「i++」的作用是使迴圈變數i的值不斷變化,以便最終滿足終止迴圈的條件,使迴圈結束。
它相當於以下語句:
i=1;
while(i<=100)
sum = sum + 1;
i++;
*再舉個例子:
for(i=1;i<=100;i++)
{printf("%d",i);}
for語句的執行過程如下:
(1) 先求解表示式1。本例中把整數1賦給變數i。
(2) 求解表示式2,若此條件表示式的值為真(非0),則執行for語句中的迴圈體,然後執行第(3)步。若為假(0),則結束迴圈,轉到第(5)步。
上例中,迴圈條件表示式「i<=100」是一個關係表示式,當i=1時,表示式「i<=100」的值為真(非0),故執行迴圈體中的語句,即printf語句,輸出i的當前值1。然後執行第(3)步。
(3) 求解表示式3。在本例中,執行i++,使i的值加1,i的值變成2.
(4) 轉回步驟(2)繼續執行。
由於此時i=2,表示式i<=100的值為真,再次執行迴圈體中的語句,printf語句輸出i的當前值2。然後再執行步驟(3)。如此反覆,直到i變到101,此時表示式i<=100的值為假,不再執行迴圈體,而轉到步驟(5)。
(5) 迴圈結束,執行for語句的下面一個語句。
ps:大陸一般都是用紅皮書作教材。lz如果有紅皮書(c程式設計第四版),翻到p114~p125
有很詳細的敘述三種迴圈的不同。
18樓:匿名使用者
dowhile(條件);
即使條件假,也迴圈一次;注意條件後面的分號不能忘記。
for(條件1;條件2;條件3)
相當於與;
條件1;
while(條件2)
這下你應該懂了吧!!!
19樓:匿名使用者
第一題,在c和c++語言中,變數只能先宣告,再使用。否則在程式編譯時,會提示出錯。如果你在宣告變數時,未賦值,初值不一定是0。
第二題,do-while是先執行迴圈語句,後判斷,for是先判斷。
20樓:2013努力實現
while是先判斷如果是「真」就執行 「假」不執行!
do while是先執行一次然後再判斷真或假,「真」執行,「假」不執行!
for也是先判斷再執行。
c語言中while是什麼意思
21樓:
當型迴圈,當你的條件滿足while的條件時,就會執行while{}括號內的語句,不滿足則退出while迴圈,執行while後面的語句
22樓:福建省寧德市
c語言中的while是一種迴圈語句,是計算機的一種基本迴圈模式。當滿足條件時進入迴圈,不滿足跳出
使用格式為:
while(條件表示式)
迴圈體語句;
3.當while迴圈的條件表示式為真時,進入迴圈,一直迴圈到條件表示式為假為止
23樓:12文件
知道迴圈次數的時候for和while都可以用,比如for(int i=0;i<100;i++)就可以寫成int i=0;
while(i<100),
不知道迴圈次數只能用while,如while(x>0)
24樓:匿名使用者
while(a) 表示當a!=0時執行迴圈,其等價於while(a!=0)。
if(a) 同上。 while(!a) 表示當a=0時執行迴圈,其等價於while(a==0)。
if(!a) 同上。 if(j%2)continue; 表示j%2!
=0時執行continue;j%2!=0表示j除以2的餘數不為零,即除不盡。即j為奇數時執行continue;~
25樓:花心彩妝悠
while和for迴圈類似 是c語言中的一種控制語句
26樓:苦澀無人愛
while()是迴圈語句,t是判斷條件,當t為真或非0的話,執行迴圈,否則退出迴圈,比如t=1,迴圈會持續執行,t=0則退出迴圈,或者 t 可以是其他判斷語句,滿足ture時執行迴圈,為false則退出迴圈
27樓:匿名使用者
while(t)
相當於while( t!=0 )
t值為0時,條件為假
t值不為0時,條件為真
while( t )是while( t!=0 )的簡便寫法。
28樓:
一直執行while所包含的語句,就是無限迴圈。
一般用來執行程式的主體,程式執行後,一直迴圈等待中斷等事件的發生;
處理完事件後,繼續迴圈。
c語言中,與語句while(!e)括號中表示式含義等價的是
29樓:
c語言中規定邏輯值有兩種情況,非零,零,也就是說()中的值要麼是零,要麼是非零。兩種情況都要和零進行判斷,所以判斷e==0
30樓:匿名使用者
b選項,因為括號是的條件是非e,計算機只有兩種數,0和非0,假如e為非零,則!e為0,e為零,!e為非零,,而e!=0,e為真,表示式為0,否則為非零 所以只有b對
31樓:本未終始
答案為a。
1.邏輯值false的實際值為0,true為非0值。
2.!e,當e是false時為true,只有當e為0時才會有"true",其於均為"false";所以只有a成立,其它選項的e值均為非0值,返回的結果均為「false".
32樓:
a解釋: while ( )
當 () 內容為「真」時,則執行
b c d 答案的性質是一樣的。它們均無法滿足()值為真。 值有a答案可以。
33樓:匿名使用者
d 計算機只能識別0和1,凡1、2、3……、a、b、c……、等被視為非0。
e為非0,!e=0,所以選d
34樓:
a分給 本末終始 ,:-)
c語言,字串問題和while迴圈
35樓:昔姝功孤雲
就這一句就夠了,字串的尾部都有字元"\0"代表字串結束,對應bool值得false,當到達string尾部時,*string
就是"\0"
相當於一個false。
36樓:蝶心戀海
*string是一個指標,最開始指向字串的第一個字元,注意下面的*string++,此時已經將指標指向移動到下一個字元,因為字元ascn碼是整數大於0,判斷為真,繼續迴圈,字串結尾自動新增『\0』表明結束,指標增加到這裡時,判斷為假,迴圈結束,count剛好是個數。
37樓:匿名使用者
指標不為空就算是true
指標為空就是flase, 跳出迴圈
38樓:匿名使用者
下面的三種寫法是等效的:
1、while (*string)
2、while (*string != 0)3、while (*string != '\0')while語句後面的條件語句應當是個表示式,在c語言中這個表示式可以是邏輯表示式也可以是數值表示式,當表示式的值為數值時,0表示false,非0表示true
第一種寫法的意思就是當string的當前內容是非0時實行迴圈,等效於第2種
第三種寫法是最規矩的,也是最提倡的,可讀性強,而且事實上不會降低執行效率,可以這樣寫的原因是字串結束符號'\0'的ascii碼是0,你查下ascii碼錶就知道了。
C語言表示式105的值是C語言中表示式105的值是?
是1。根據c語言運算規則,檢查左運算元的值是否小於右運算元的值,如果是則條件為真。1 0 5是先執行1 0 false 結果為0,再執行0 5 true 因此結果為1。如下 表示式的值為1 根據運算子表,是從左往右結合的。先看1 0是假,返回0。原式就變成 0 5,是真,返回1 所以結果就是 1。擴...
C語言中表示式135值,c語言程式是求表示式的值s
有一個優先bai 級的問題 du,注意單雙目 運算子的優先順序zhi,雙目運算子dao除賦值回運算子都為自答左向右結合.運算子.與 相比 大於 與 相比 大於 運算子的運算是自左向右.1 3 5,因為 1 3為真,值為1 1 5為假,值為0 故表示式 1 3 5值為0 1 3為真,值為1 1 5為假...
如何知道c語言中的算術表示式是合法的
這個符號前後一定是整數int型,像 int 4.5是強制轉換也是可以的,但是這個括號必須寫在你要強制轉換對像的前面,很多時候他為了迷惑你,會寫在後面。其他沒有什麼合法不合法之說了。1 表示式計算的bai結果由運算過程中du運算物件的數zhi據型別決定,dao相同資料 類回型資料進行運算,結果保答持原...