3.循環(huán)體可以是空語句。
#include"stdio.h"
void main(){
int n=0;
printf("input a string:\n");
for(;getchar()!='\n';n++);
printf("%d",n);
}
本例中,省去了for語句的表達(dá)式1,表達(dá)式3也不是用來修改循環(huán)變量,而是用作輸入字符的計(jì)數(shù)。這樣, 就把本應(yīng)在循環(huán)體中完成的計(jì)數(shù)放在表達(dá)式中完成了。因此循環(huán)體是空語句。應(yīng)注意的是,空語句后的分號(hào)不可少,如缺少此分號(hào),則把后面的printf 語句當(dāng)成循環(huán)體來執(zhí)行。反過來說,如循環(huán)體不為空語句時(shí), 決不能在表達(dá)式的括號(hào)后加分號(hào), 這樣又會(huì)認(rèn)為循環(huán)體是空語句而不能反復(fù)執(zhí)行。這些都是編程中常見的錯(cuò)誤,要十分注意。
4.for語句也可與while,do-while語句相互嵌套,構(gòu)成多重循環(huán)。以下形成都合法的嵌套。
(1)for(){…
while()
{…}
…
}
(2)do{
…
for()
{…}
…
}while();
(3)while(){
…
for()
{…}
…
}
(4)for(){
…
for(){
…
}
}
void main(){
int i,j,k;
for(i=1;i<=3;i++)
{ for(j=1;j<=3-i+5;j++)
printf(" ");
for(k=1;k<=2*i-1+5;k++)
{
if(k<=5) printf(" ");
else printf("*");
}
printf("\n");
}
}
相關(guān)推薦:計(jì)算機(jī)等考二級(jí)C語言備考:C語言/C++編譯過程北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |