|
}
上例中, while循環是以檢查c是否為回車符開始, 因其事先被初始化為空, 所以條件為真, 進入循環等待鍵盤輸入字符; 一旦 輸入回車, 則c='\X0D', 條件為假, 循環便告結束。 與for循環一樣,while循環總是在循環的頭部檢驗條件,這就意味著循環可能什么也不執行就退出。 注意: 1. 在while循環體內也允許空語句。 例如: while((c=getche())!='\X0D'); 這個循環直到鍵入回車為止。 2. 可以有多層循環嵌套。 3. 語句可以是語句體, 此時必須用"{"和"}"括起來。
例18:
#include<stdio.h> main() { char c, fname[13]; FILE *fp; /*定義文件指針*/ printf("File name:"); /*提示輸入文件名*/ scanf("%s", fname); /*等待輸入文件名*/ fp=fopen(fname, "r"); /*打開文件只讀*/ while((c=fgetc(fp)!=EOF) /*讀取一個字符并判斷是否到文件結束*/ putchar(c); /*文件未結束時顯示該字符*/ }
1.3.2.3 do-while 循環 do-while 循環的一般格式為:
do 語句; while(條件);
這個循環與while循環的不同在于: 它先執行循環中的語句, 然后再判斷條件是否為真, 如果為真則繼續循環; 如果為假, 則 終止循環。因此, do-while循環至少要執行一次循環語句。 同樣當有許多語句參加循環時, 要用"{"和"}"把它們括起來。
1.3.3 開關語句 在編寫程序時, 經常會碰到按不同情況分轉的多路問題, 這時可用嵌套 if-else-if 語句來實現, 但if-else-if語句使用不方 便, 并且容易出錯。對這種情況, Turbo C2.0提供了一個開關語句。開關語句格式為:
switch(變量) { case 常量1: 語句1或空; case 常量2: 語句2或空; . .
|