while與if區別,if和while的區別

2022-03-17 19:20:04 字數 5609 閱讀 7631

1樓:匿名使用者

while用於迴圈語句,而if用於判斷和分支語句。

由於你並沒有指明是什麼程式,只能泛泛而談了。

if 語句中,常用格式為:

if(判斷條件)

上面的結構,只是進行一次判斷。

if與else結合,就可形成一個分支結構的語句,形如

if(判斷條件1)

else if (判斷條件2)

else if (判斷條件3)

else if (...)

else

有些程式則用的是case,實際上與上面的else if等價。

while一般有兩種形式

形式1:do while(判斷條件),執行效果是先執行執行語句,再進行while條件判斷,如果符合條件,則返回繼續執行do後的執行語句,由此形成迴圈。

形式2:while(判斷條件)do,先進行判斷,而執行執行語句。執行語句執行完畢,自動返回繼續判斷while中的條件是否符合,符合的話,繼續執行執行語句,不符合,則退出迴圈。

while與if語句的最大的相同點是都有至少一步的判斷。

最大的不同點是:if語句執行完畢後,接著執行下面的語句。而while中的執行語句執行完畢後,還要進行繼續判斷條件是否符合迴圈條件,根據判斷的條件,返回執行語句或繼續執行下面的程式。

有些程式中保留了goto語句,將goto語句放入if語句的執行語句中,用於goto到if語句之前,也可以起到迴圈的效果,但這種語句破壞了程式的可讀性,多數人不提倡這樣做,因此,很多程式已經取消了goto語句。

另外,在while的執行語句中,應當包含一個變數,該變數的值的變化,可影響到while中的判斷結果,以此使迴圈有條件地退出.不至於成為死迴圈。

2樓:聽不清啊

對啊,while是當條件滿足時進行迴圈;而if 是當條件滿足時執行一次。

把print1函式的while改為if  才能夠執行出正確結果。因為在print1函式中,沒有修改變數a的值,a的值就永遠是321。就會永遠「死迴圈」。

而改為if 後,因為遞迴能把十位以上的數字列印出來,所以只要執行一次就夠了。

3樓:睿智的翅膀

while是迴圈語句,在這裡語句執行完一次後會再次判斷while(a>0)語句如果符合就會迴圈執行

if是條件語句,只會執行一次的

這是最基本的知識,樓主加油哦~

4樓:喃喃自語開心

while是迴圈語句你輸入123後123/10得到12在12/10得到1,1就是真條件一直成立所以while死迴圈

if語句從上到下只執行一次

5樓:匿名使用者

while是迴圈語句

if是判斷語句

迴圈語句是 滿足一定條件迴圈執行 0 或多次判斷 語句 只會執行 0 或1次

6樓:鮮雁員環

1、用法

while和if本身就用法不同,一個是迴圈語句,一個是判斷語句。

2、執行模式

if 只做判斷,判斷一次之後,便不會再回來了。

while 的話,迴圈,直到結果為false,才跳出來。

3、使用效果

連結串列的結構,要一直讀下去,直到讀完整個連結串列結構,所以需要while。

if的話只讀一次,便跳出了

。擴充套件資料:

if 和 while當條件不成立時,都跳過**塊執行後面的**。

不同的是當條件成立時,if執行完**塊後繼續執行後面的**,while執行完**塊後再判斷while的條件,成立就再執行**塊裡的**,直到不成立,才執行**塊後面的**。while的**塊裡如果遇到break;指令,則跳出while**塊直接執行後面的**。

if和while的區別

7樓:匿名使用者

雖然二者都有條件判斷,但是while是用來做迴圈的,也就是說只要條件滿足,就會執行一次迴圈體,執行完以後會再判斷一次條件,如果滿足條件,還會再執行一次,終而復始,除非你在迴圈中對條件進行了改變才會從迴圈中跳出來。

而if只做一次判斷,條件不滿足就不執行,滿足就執行一次,執行完就往下執行,不會再回過頭來繼續執行。

c語言,if迴圈和while迴圈的區別是。。。

8樓:汽車影老師

一、語法不同

if:if(logical_test,value_if_true,value_if_false)

while:while<條件>do<語句>

二、功能不同

if語句,if( ),括號裡的內容和while( )裡的內容都是判定句,判定為真則執行語句,假則不執行語句。

不同點就是if沒有迴圈的性子,一旦執行過後就跳出語句,而while判定為真後執行它下面的語句,執行完後返回括號裡繼續判定,判定為真繼續執行語句知道括號裡判定為假為止。

三、意思不同

while是迴圈語句,在c語言中通常用while來表示迴圈,例如在main()函式中一般都用while(1)來讓主程式迴圈執行。

while語句叫做迴圈語句。同樣是判斷條件是否成立。但是執行完畢後繼續判斷該條件,直到該條件不成立則轉入下一條語句。

9樓:笨仔

if不是迴圈,是條件判斷,while才是迴圈。if語句中,當後面括號內語句判斷為true時執行if後面的語句或者語句塊,只執行一次,while語句中,當後面括號內語句判斷為true時執行while後面的語句或者語句塊,並且每執行完一次都要再進行條件檢查(就是while括號內的語句是否為true),每當條件符合時就執行迴圈體,直到條件不符合或者遇到break為止。

10樓:投哦咯

兩個都是可以有條件的迴圈,

if迴圈執行完了會跳出迴圈,而while就不一樣了,除非改變了迴圈條件,否則一直在迴圈裡面,不會跳出

do while 和while的區別

11樓:深圳市關鍵詞教育培訓中心

do while 和while的區別

while和do…while語句都是迴圈語句,功能都差不多,唯一的區別在於檢驗條件的時間上。while語句在進入迴圈體之前要先判斷條件是否成立,如果成立的話則進入迴圈體。

而do…while語句則相反,是先執行迴圈體,然後再判斷條件是否成立,如果成立的話則繼續迴圈體,如果不成立則跳出迴圈,也就是說對於do…while語句,不管條件是否成立都要先執行一遍。

while和do-while的使用方法

一、while語句的一般形式為:

while(表示式)語句

其中表示式是迴圈條件,語句為迴圈體。

while語句的語義是:計算表示式的值,當值為真(非0)時,

執行迴圈體語句。

二、do-while語句的一般形式為:

do語句

while(表示式);

這個迴圈與while迴圈的不同在於:它先執行迴圈中的語句,然後再判斷表示式是否為真,

如果為真則繼續迴圈;如果為假, 則終止迴圈。因此,

do-while迴圈至少要執行一次迴圈語句。

使用while語句應注意以下幾點:

1、while語句中的表示式一般是關係表達或邏輯表示式,只要表示式的值為真(非0)即可繼續迴圈。

2、迴圈體如包括有一個以上的語句,則必須用{}括起來,組成複合語句。

12樓:武夷山大道

while

是先判斷再執行

例:int

i=10;

while(i<10)

結果是什麼都不列印,最終i的值為10

do-while

是先執行再判斷

例:int i=10;

dowhile(i<10);

列印的也是10,最終i=11

兩者的區別在於第一圈迴圈時,while是先判斷迴圈條件,再迴圈.所以第一個程式什麼都不列印.

而do-while則是先執行後判斷.所以,第二個程式先列印10,然後i++然後跳出迴圈.

例:public static void main(string args)

system.err.println("while:"+count+"次");

count = 0;

num = 20;

do while (num < 250);

system.err.println("do-while:"+count+"次"); }

輸出結果:

while:12次

do-while:12次

分析:num+ = 20;可以理解為num = num +20;

例:int a=0;

for(i=1;i<=100;i++)

其中,a=a+i一句可以替換為a+=i,效果一樣.為便於理解,你可以把a+=i讀做"a加的是i"

在c語言中,三大語句if,while,do while的區別與共通之處有哪些?誰知道 50

13樓:匿名使用者

共通之處在於都會進行條件判斷。

區別如下:

if語句是判斷語句,只執行一次,

例如 :

if(a>0) b=1;

當a為正數時,才執行b=1;

若a不是正數,那麼b=1;就不會執行到。

之後if語句就結束了,只判斷一次a>0這個條件

while是迴圈語句,反覆執行直到其迴圈條件不滿足為止。

例如:while(a>0)

當a為正數時,就執行b=b+1;a=a-1;

之後會繼續回到a>0這個條件的判斷,如果a還是正數,就再次執行b=b+1;a=a-1;

如此不斷重複地判斷a>0這個條件,直到這個條件不成立為止,迴圈才結束。

如果一開始a就不是正數,那麼b=b+1;a=a-1;就一次都不會執行到。

do while也是迴圈語句,反覆執行直到其迴圈條件不滿足為止。

跟while語句的區別在於,do while會先執行一次迴圈體裡的語句。

例如:do

while(a>0);

一開始就先執行一次b=b+1;a=a-1;

之後才去判斷a>0這個條件,成立的話就再次執行b=b+1;a=a-1;

如此不斷重複地判斷a>0這個條件,直到這個條件不成立為止,迴圈才結束。如果一開始a就不是正數,那麼b=b+1;a=a-1;還是能被執行一次。

14樓:奔跑貝

如果說後兩個的話都是迴圈語句 ,三個共同之處在我看來就是能判斷。你是不是把if打錯了

15樓:聽不清啊

if,while,do while的共通之處:都有條件判斷部分。

區別:if:當條件滿足時,會執行後繼的一個或一組語句;當條件不滿足時,前面的語句就不被執行;當需要時,可以指定它執行另一個或另一組語句(else 子句)。

while:當條件滿足時,會重複執行後繼的一個或一組語句(稱為迴圈體);直到迴圈體中修改了控制變數的值,不滿足條件時才退出迴圈。(如果條件不滿足,則迴圈體部分就不被執行)

do while:基本與while同,只是它的判斷是在迴圈體執行一次後才判斷的,所以迴圈體是至少執行一次的。

16樓:長壽湖畔有人家

這樣學,不好吧,太咬文嚼字了

c語言的 while中怎麼使用,C語言的 while中怎麼使用break

i 0 while i 100 if a i 10 break i 與之相關的是continue,其只結束當前次的迴圈,並不跳出整個迴圈。關於while迴圈,break跳出迴圈 while迴圈普通格式 while conditiondo commanddone1234 簡化格式 while 條件 d...

When和while用法的區別,When和while用法的區別

as和when while的區別 i was walkingon the street when i saw mr.wang.我正在街道上散步,這時看到mr.wang.be doing when 一般過去時,表示在進行一個比較長的動作時突然插入另一個動作。i was doing my homewor...

when和while有什麼區別?

when和while的區別在於側重點不同 用法 詞源解說 一詞多義。一 側重點不同。1 when所引導的從句,其謂語動詞既可是持續動詞,也可是短暫動詞 謂語動詞動作發生的時間可以與主句謂語動詞的動作是同時,或之前 之後。2 while句中的謂語動詞應為持續動詞,不用短暫動詞,謂語動作發生的時間通常與...