三大循環for while 和 do{ }while;
四大跳轉 :
無條件跳轉語句 go to;
跳出循環語句 break;
繼續跳出循環語句 continue;
返回值語句 return
判斷語句 if,if else,if else if else if...else
ifelse 組合
if(0 == x)if(0 == y) error();else{//program code}
else到底與那個if配對 C語言有這樣的規定:
else 始終與同一括號內最近的未匹配的if語句結合。
if語句后面的分號
if(NULL!= p) ;fun();
這里的fun()函數并不是在NULL != p 的時候被調用,而是任何時候都會被調用。問題就出
在if 語句后面的分號上。在C 語言中,分號預示著一條語句的結尾,但是并不是每條C 語言
語句都需要分號作為結束標志。if 語句的后面并不需要分號,但如果你不小心寫了個分號,
編譯器并不會提示出錯。因為編譯器會把這個分號解析成一條空語句。也就是上面的代碼實
際等效于:
if(NULL != p){;}fun();
switch、case 組合
if、else 一般表示兩個分支或是嵌套表示少量的分支,但如果分支很多的話……還是用
switch、case 組合。
基本格式為:
switch(variable){case value1;//code;break;case value2;//code;break;case value3;//code;break;case value4;//code;break;default:break;}
1、case 語句后面不要忘記加break;
2、 最后必須使用default 分支。即使程序真的不需要default 處理,也應該保留
語句:
default :
break;
這樣做并非畫蛇添足,可以避免讓人誤以為你忘了default處理應該得要。
case后面必須是整型或字符型的常量或常量表達式。
do、while、for 關鍵字
C 語言中循環語句有三種:while 循環、do-while 循環、for 循環。
while 循環:先判斷while 后面括號里的值,如果為真則執行其后面的代碼;否則不執
行。while(1)表示死循環。死循環有沒有用呢?看下面例子:
比如你開發一個系統要日夜不停的運行,但是只有操作員輸入某個特定的字符‘#'才
可以停下來。
while(1){if(‘#'== GetInputChar()){break;}}
break 與continue 的區別
break 關鍵字很重要,表示終止本層循環。現在這個例子只有一層循環,當代碼執行到
break 時,循環便終止。
#include<stdio.h>int main(){flaot area,pi=3.1415926;int r;for(r=0;r<100;r++){area=pi*r*r;if(area>100) //當area>100時就跳出for循環break;}printf("area=%d/n",area);}
continue 表示終止本次(本輪)循環。當代碼執行到continue 時,本輪循環終止,進入下一輪循環。具有過濾功能。
#include<stdio.h>int main(){inti=0,sum=0;for(i=0;i<10;i++){if(i%3==0)//當i%3==0時就continue;繼續下一次循環 把0~10中3的整數倍濾除掉{printf("i=%d",i);continue;}sum=sum+i;}printf("sum=%d/n",sum);}
do-while 循環:先執行do 后面的代碼,然后再判斷while 后面括號里的值,如果為真,
循環開始;否則,循環不開始。其用法與while 循環沒有區別,但相對較少用。
for 循環:for 循環可以很容易的控制循環次數,多用于事先知道循環次數的情況下
循環語句的注意點
長循環在最內層,效率高
for (col=0; col<5; col++ ){for (row=0; row<100; row++){sum = sum + a[row][col];}}
長循環在最外層,效率低
for (row=0; row<100; row++){for ( col=0; col<5; col++ ){sum = sum + a[row][col];}}
循環要盡可能的短,要使代碼清晰,一目了然
For循環舉個例子 9*9乘法表
#include<stdio.h>int main(){int i,j,sum=0;printf("輸出9*9乘法表:/n");for(i=1;i<10;i++){for(j=1;j<=i;j++){sum=i*j;printf("%d*%d=%d ",j,i,sum);}printf("/n");}return 0;}
打印出:
輸出9*9乘法表:
1*1=11*2=2 2*2=41*3=3 2*3=6 3*3=91*4=4 2*4=8 3*4=12 4*4=161*5=5 2*5=10 3*5=15 4*5=20 5*5=251*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=361*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=491*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=641*9=92*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
記得開始學c語言時對于這些打印感覺很難,其實就是不會用for,沒有好的程序理解能力,也就不會想到這些算法,現在慢慢有了基礎,對于這些小程序也就運用好的很嫻熟了。
return 用來終止一個函數并返回其后面跟著的值。
return (Val);//此括號可以省略。但一般不省略,尤其在返回一個表達式的值時。
以上所述是小編給大家介紹的詳解C語言 三大循環 四大跳轉 和判斷語句 ,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!
新聞熱點
疑難解答
圖片精選