C語言do循環
沒有do循環,只有do-while循環、while循環和for循環,因此如果你是用do-while循環,do和while兩者是密不可分的,do里面描述了你在不斷的重復做什么事,而while告訴編譯器下一次重復進入循環的條件是什么,如果沒有while的話,整個循環的思想就少了一部分,也就不能稱之為循環語句了。
看樓主可能是初學者,補充下。
C語言中有三種基本的循環結構,for、while、do-while,每種循環都有自己的特點,你需要根據你所面臨的狀況進行選擇。
for循環:使用的時候明確循環次數,即知道循環進行多少次。也就是說如果你現在要使用循環,而且你知道循環具體多少次,可以選擇for循環。
eg:遍歷一個數組。for(i=0;i<;數組的長度;i++){};
while循環:不需要明確循環具體循環多少次,只需要知道循環終止條件。比如使用循環讀取若干字符,但是不知道具體讀取多少個,也就是不知道循環次數,但是卻知道,當輸入某個字符,例如'q'的時候退出,即循環終止。
eg:讀取若干字符,當讀取到q的時候退出。while(q != getchar()){};
do-while循環:和while循環類似,但是他有個特點,就是他保證了循環至少進行一次,也就是說先運行一次循環體,在判斷結束條件,在我們實際使用用經常使用都do-while()的用法,你可以詳細了解下,有很多關于do-while的講解,在很多情況下他的作用是很“神奇"的.
c語言中的do-while循環怎么用啊?給個例子唄
以下列代碼為例:
main()
{
int day = 1;
do
{
printf("%d\n", day);
day++;
}
while (day <= 7);
return 0;
}
程序在執行的過程為:首先進入第一次循環顯示1并將day的值加1,然后做條件判斷day有值為2,于是day <= 7的結果為真,返回到do后面的循環體進入下一次循環。直到day的值為7時。
當printf顯示出7,然后day的值加1,然后做條件判斷,day的值為8,于是day <= 7的結果為假,結束循環。
擴展資料:
C 語言提供了以下幾種循環類型:
1、while循環
只要給定的條件為真,C 語言中的 while 循環語句會重復執行一個目標語句。
2、for循環
for 循環允許您編寫一個執行指定次數的循環控制結構。
3、do。while
不像 for 和 while 循環,它們是在循環頭部測試循環條件。在 C 語言中,do。while 循環是在循環的尾部檢查它的條件。
do。while 循環與 while 循環類似,但是 do。while 循環會確保至少執行一次循環。
循環控制語句包括break語句、continue語句、goto語句,這些都可以改變代碼的執行順序,通過它可以實現代碼的跳轉。
參考資料:
循環語句——百度百科
1, 分別用三種循環語句(while語句,do-while語句,for語句),實現
3個程序都經過測試正確,可拷貝。
while語句
#include <stdio.h>
int main()
{
int i = 200, sum = 0;
while(i <= 1000)
{
if (i % 3 == 0)
sum += i;
i += 5;//被5整除,所以每次+5
}
printf("sum = %d", sum);
}do-while語句:
#include <stdio.h>
int main()
{
int i = 200, sum = 0;
do
{
if (i % 3 == 0)
sum += i;
i += 5;//被5整除,所以每次+5
}while(i <= 1000);
printf("sum = %d", sum);
}for語句:
#include <stdio.h>
int main()
{
int i = 200, sum = 0;
for (i = 200; i <= 1000; i += 5)//被5整除,所以每次+5
{
if (i % 3 == 0)
sum += i;
}
printf("sum = %d", sum);
}
編程 do while 語句
do-while語句的一般形式為:
do{
循環體語句區塊
}while(布爾表達式)
do-while語句中各個成分的執行次序是:
先執行一次循環體語句區塊,然后再判斷布爾表達式的值,若值為false則跳出do-while循環,執行后面的語句;若值為true則再次執行循環體語句區塊。如此反復,直到布爾表達式的值為false,跳出do-while循環。
do-while循環語句與while循環語句的區別僅在于do-while循環中的循環體至少執行一次,而while循環中的循環體可能一次也不執行。
例子:
計算從1開始的連續n個自然數之和,當其和值剛好超過100時結束,求這個n值。
public class c3_9
{
public static void main(String[] args)
{
int n=0;
int sum=0;
do{
n++;
sum+=n;
}while(sum
do while語句循環
do while就是先執行的,只是輸入不當會導致死循環吧。
double a,x1,x2;
scanf("%lf",&a);
do
{
x1=a/2; //x1固定為a/2
x2=0.5*(x1+a/x1); //x2固定為a/4 + 1
}
while(fabs(x1-x2)>=1e-5); //x1 - x2固定為fabs(a/4 -1)
printf("x=%f",x2);要想跳出循環,fabs(a/4 -1) < 0.00001,那么a輸入4就可以了。
vf中的do while循環語句怎么用
do while {條件表達式,當條件成立則進行循環}……{進入循環后運行}{回到前面的do while,如果條件成立則再次循環,不成立則退出循環}enddo{結束while}。
詳細: do while語句的執行過程是:首先計算條件的值,若是真(.t.),就執行循環體,再計算條件的值再判斷。若是假,就結束循環,執行“enddo”語句后面的語句 。 do while語句的執行過程用圖表示如下: 例題:求1*2*3*…*n的積小于500的最大的n值。
程序代碼如下: set talk off clear **清屏 n=0 **想一下,n為什么賦值0,n=1可以嗎? s=1 **s為積,賦初值為1 do while shttp://***可能會有彈出廣告。