本文目錄一覽:
c語言中while的用法
while語句如下:
while語句的一般形式為: while(表達式) 語句其中表達式是循環條件,語句為循環體。
while語句的語義是:計算表達式的值,當值為真(非0)時, 執行循環體語句。其執行過程可用下圖表示。【例6-2】用while語句計算從1加到100的值。用傳統流程圖和N-S結構流程圖表示演算法,見圖:
#includestdio.h
intmain(void){
inti,sum=0;
i=1;
while(i=100){
sum=sum+i;
i++;
}
printf(“%d\n”,sum);
return0;
}
【例6-3】統計從鍵盤輸入一行字元的個數。
#includestdio.h
intmain(void){
intn=0;
printf(“input a string:\n”);
while(getchar()!=’\n’)n++;
printf(“%d”,n);
return0;
}
本常式序中的循環條件為getchar()!=’\n’,其意義是,,只要從鍵盤輸入的字元不是回車就繼續循環。循環體n++完成對輸入字元個數計數。從而程序實現了對輸入一行字元的字元個數計數。使用while語句應注意以下兩點。1) while語句中的表達式一般是關係表達或邏輯表達式,只要表達式的值為真(非0)即可繼續循環。
#includestdio.h
intmain(void){
inta=0,n;
printf(“\ninput n: “);
scanf(“%d”,n);
while(n–)printf(“%d “,a++*2);
return0;
}
本常式序將執行n次循環,每執行一次,n值減1。循環體輸出表達式a++*2的值。該表達式等效於(a*2; a++)。2) 循環體如包括有一個以上的語句,則必須用{}括起來,組成複合語句。
while循環的一般形式為:
while(表達式){
語句塊
}
其中表達式稱為循環條件,語句塊稱為循環體。
while語句的意思是:先計算表達式的值,當值為真(非0)時, 執行循環體語句;執行完循環體語句,再次計算表達式的值,如果為真,繼續執行循環體……這個過程會一直重複,直到表達式的值為假(0),就退出循環,執行後面的語句。其執行過程如下圖所示:
用while語句計算1加到100的值:
?
12345678910
#include stdio.hint main(void){ int i=1, sum=0; while(i=100){ sum+=i; i++; } printf(“%d\n”,sum); return 0;}
運行結果:
5050
代碼分析:
1) 程序運行到while語句時,因為 i=1,i=100 的值為真,所以執行循環體;執行結束後 i 的值變為 2,sum 的值變為 1。
2) 接下來會繼續判斷 i=100是否成立,因為此時 i=2,i=100 成立,所以繼續執行循環體;執行結束後 i 的值變為 3,sum 的值變為3。
3) 重複執行步驟 2)。
4) 當循環進行到第100次,i 的值變為 101,sum 的值變為5050;因為此時 i=100 不再成立,所以就退出循環,不再執行循環體,轉而執行while循環後面的代碼。
再看一個例子,統計從鍵盤輸入的一行字元的個數:
?
12345678
#include stdio.hint main(){ int n=0; printf(“Input a string:”); while(getchar()!=’\n’) n++; printf(“Number of characters: %d\n”, n); return 0;}
運行結果:
Input a string:c.biancheng.net
Number of characters: 15
本常式序中的循環條件為getchar()!=’\n’,其意義是,只要從鍵盤輸入的字元不是回車就繼續循環。循環體n++;完成對輸入字元個數計數。
do-while循環
除了while循環,在C語言中還有一種 do-while 循環。
do-while循環的一般形式為:
do{
語句塊
}while(表達式);
do-while循環與while循環的不同在於:它會先執行循環體,然後再判斷表達式是否為真,如果為真則繼續循環;如果為假,則終止循環。因此,do-while 循環至少要執行一次循環體。其執行過程可用下圖表示:
用do-while計算1加到100的值:
?
12345678910
#include stdio.hint main(){ int i=1, sum=0; do{ sum+=i; i++; }while(i=100); printf(“%d\n”, sum); return 0;}
運行結果:
5050
c語言while循環用法
c語言while循環用法:
一般形式如下:
while(表達式)
{循環體內語句}
循環體外語句
其中執行過程如下:
(1)計算while後面括弧里表達式的值,若其結果非0,則轉入(2),否則轉(3)。
(2)執行循環體,轉(1)。
(3)退出循環,執行循環體下面的語句。
由於是先執行判斷後執行循環體,所以循環體可能一次都不執行。
循環體可以為空語句「;」。
使用:
如果循環次數在執行循環體之前就已確定,一般用for語句。如果循環次數是由循環體的執行情況確定的,一般用while語句或者do- while語句。
當循環體至少執行一次時,用do-while語句,反之,如果循環體可能一次也不執行,則選用while語句。C++/C循環語句中,for語句使用頻率最高,while語句其次,do語句很少用。
三種循環語句for、while、do-while可以互相嵌套自由組合。但要注意的是,各循環必須完整,相互之間絕不允許交叉。
求編語句,c語言,要一個While語句,判斷連續輸入幾個數組數是否從小到大排序
//只是寫下這段語句……
int isAsc(int array[], int n){
int i = 0;
while(i n-1){
if(array[i] array[i+1]) return 0; //返回 false 因為不按照升序。
}
return 1;
}
這個演算法就是傳入一個數組的首地址(就是數組名)還有輸入的長度n,可以隨時調用的。因為C中沒有bool類型所以就用int類型替代了。但是C中,0就代表false,其他不為0的就是true。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/200576.html