說一說條件語句有哪幾種形式
腳本的威力體現在它們可以根據人們給出的各種條件做出決策,javascript使用條件語句來做判斷
條件語句(conditianal statement)通過判斷表達式的值來決定執行還是跳過某些語句,包括if語句和switch語句
【if語句】
最常見的條件語句是if語句。if語句的條件必須放在if后面的圓括號內,條件的求值結果永遠是一個布爾值,即只能是true或false。花括號中的語句,不管它們有多少條,只有在給定條件的求值結果是true的情況下才會執行
【switch語句】
當所有的分支都依賴于同一個表達式的值時,else if并不是最佳解決方案。在這種情況下,重復計算多條if語句中的條件表達式是非常浪費的做法,而switch語句正適合處理這種情況。
switch語句執行一個多路分支,首先計算expression的值,然后查找case子句的表達式是否和expression的值相同。如果找到匹配的case,那么將會執行這個case對應的代碼塊。如果找不到匹配的case,那么將會執行default標簽中的代碼塊。如果沒有default標簽,switch語句將跳過它的所有代碼塊
條件語句
一個表達式的返回值都可以用來判斷真假,除非沒有任何返回值的void型和返回無法判斷真假的結構。
當表達式的值不等于0時,它就是“真”,否則就是假。一樣個表達式可以包含其他表達式和運算符,并且基于整個表達式的運算結果可以得到一個真/假的條件值。
因此,當一個表達式在程序中被用于檢驗其真/假的值時,就稱為一個條件。一、if語句if(表達式) 語句1;如果表達式的值為非0,則執行語句1,否則跳過語句繼續執行下面的語句。
如果語句1有多于一條語句要執行時, 必須使用{和} 把這些語句包括在其中, 此時條件語句形式為: if(表達式){語句體1;}例如:if(x>=0) y=x;if(a||b&&c) {z=a+b;c+=z;}二、if--else語句除了可以指定在條件為真時執行某些語句外,還可以在條件為假時執行另外一段代碼。在C語句中利用else語句來達到這個木的。
if(表達式) 語句1;else 語句2;同樣,當語句1或語句2是多于一個語句時,需要用{}把語句括起來。例如:if(x>=0) y=x;else y=-x;三、if--else if--else結構。
if(表達式1) 語句1; else if(表達式2) 語句2; else if(表達式3) 語句3; . . . else 語句n; 這種結構是從上到下逐個對條件進行判斷,一旦發現條件滿點足就執行與它有關的語句, 并跳過其它剩余階梯;若沒有一個條件滿足,則執行最后一個else 語句n。最后這個else常起著缺省條件的作用。
同樣,如果每一個條件中有多于一條語句要執行時,必須使用{和}把這些語句包括在其中。條件語句可以嵌套,這種情況經常碰到,但條件嵌套語句容易出錯,其原因主要是不知道哪個if對應哪個else。
例如: if(x>20||x<-10) if(y<=100&&y>x) printf(Good); else printf(Bad); 對于上述情況, Turbo C2.0規定: else語句與最近的一個if語句匹配, 上例中的else與if(y<=100&&y>x)相匹配。為了使else與if(x>20||x<-10)相匹配, 必須用花括號。
如下所示: if(x>20||x<-10){ if(y<=100&&y>x) printf(Good); } else printf(Bad); 下面舉幾個例子:1.輸入一個數,如果大于0,輸出plus;如果是負數,輸出negative;如果正好是0,則輸出zero。main(){float num;scanf(%f,&f);if(num>0)printf(plus\n);else if(num<0)printf(negative\n);elseprintf(zero\n); }先定義兩個變量,然后輸入一個數,然后判斷這個數的范圍,輸出對應的字符串。
2.輸入一個數x,輸出y。其中y是x的絕對值。
main(){float x,y;scanf(%f,&x);if(x>=0) y=x;else y=-x;printf(%f\n,y);}程序比較簡單,這兒就不分析了。其實Trubo C 2.0把一些常用的功能都寫好了,我們只需要使用就可。
例如求絕對值的功能在C的庫里面就有。看下面的:#include *(){float x,y;scanf(%f,&x);y=fabs(x); /*求x的絕對值,然后賦值給y*/printf(%f\n,y);}這個程序和上面的程序完成的功能是一模一樣的,都是求絕對值。
可以看出,用下面這個方法比上面就要好一些。由于fabs()是一個函數,系統自帶的,所以在使用它的時候,我們必須把它所在的庫文件math.h包含都程序中,即程序最前面一行。
類似的還有求開方sqrt(),求指數冪exp()等等,這些與數學方面有關的函數都在math.h里面。具體哪些有哪些沒有,在什么庫里面,可以查看一些手冊。
3.輸入x,輸出y,x和y滿足關系:x<-5 y=x;-5<=x<1 y=2*x+5;1<=x<4 y=x+6;x>=4 y=3*x-2;程序如下:main(){float x,y;scanf(%f,&x);if(x<-5)y=x;else if(-5<=x&&x<1)y=2*x+5;else if(1<=x&&x<4)y=x+6;elsey=3*x-2;printf(%f\n,y);}這里要說明兩點:(1).-5<=x&&x<1不能寫成-5<=x<1;1<=x&&x<4也不能寫成1<=x<4;在C語言中,不能認識連續不等式。(2).y=2*x+5不能寫成y=2x+5;y=3*x-2也不能寫成y=3x-2;這與我們平時所寫的方法不一樣。
4.輸入三個數x,y,z,然后按從大到小輸出。main(){float x,y,z;scanf(%f%f%f,&x,&y,&z);if(x>=y&&x>=z){printf(%f\t,x);if(y>=z) printf(%f\t%f\n,y,z);else printf(%f\t%f\n,z,y);}else if(y>=x&&y>=z){printf(%f\t,y);if(x>=z) printf(%f\t%f\n,x,z);else printf(%f\t%f\n,z,x);}else{printf(%f\t,z);if(x>=y) printf(%f\t%f\n,x,y);else printf(%f\t%f\n,y,x);}}說明:這是一個典型的if語句嵌套結構,如果不使用括號,那么if和else的對應關系就亂了。
四、switch--case語句在編寫程序時, 經常會碰到按不同情況分轉的多路問題, 這時可用嵌套if -else-if語句來實現, 但if-else-if語句使用不方便, 并且容易出錯。對這種情況, Turbo C2.0提供了一個開關語句。
開關語句格式為: switch(變量) { case 常量1: 語句1或空; case 常量2: 語句2或空; . . . case 常量n: 語句n或空; default: 語句n+1或空; } 執行switch開關語句時,將變量逐個與case后的常量進行比較,若與其中一個相等,則執行該常量下的語句,若不與任何一個常量相等,則執行default后面的語句。注意: *中變量可以是數值,也可以是字符,但必須是整數。
2.可以省略一些case和default。3.每個case或default后的語句可以是語句體,但不需要使用{和}括起來。
例如:main(){int x,y;scanf(%d,&x);witch(x){case 1:y=x+1;break; /*退出開關語句,遇到break才退出*/case 4:y=2*x+1;break;default:y=x--;break;}printf(%d\n,y);}從上面的例子可以看出,用開關語句編的程序一定可以用if語句做。那么在什么。
C語言中條件運算符是什么意思
條件運算符(? : )是一個三目運算符,即有三個操作數。
使用條件運算符(?:)可以實現 If else 的功能,其一般形式為:
表達式1 ? 表達式2 : 表達式3
例如條件語句:
if(a>b) max=a;
else max=b;
可用條件表達式寫為
max=(a>b) ? a : b;
執行該語句的語義是:如a>b為真,則把a賦予max,否則把b 賦予max。
if條件語句例子如下:
直接編譯,程序輸出結果中任意輸入年齡,程序執行結果如下圖所示:
知識擴展:
條件運算符的運算優先級低于關系運算符和算術運算符,但高于賦值符
條件運算符?和:是一對運算符,不能分開單獨使用。
條件運算符的結合方向是自右至左。
日語中,條件形是什么
條件形在規范語法(學校語法)里叫做假定形。動詞、形容詞、形容動詞和助動詞都有假定形,
動詞的假定形后續接續助詞ば,構成條件句,也可以表示并列。變化如下。
一、五段動詞,把詞尾的ウ段假名改為エ段假名。如:
書く 書け
嗅ぐ 嗅げ
話す 話せ
待つ 待て
死ぬ 死ね
呼ぶ 呼べ
読む 読め
帰る 帰れ
買う 買え
二、一段動詞、サ變動詞和カ變動詞,是把詞尾中的る改為れ。
見る 見れ
食べる 食べれ
する すれ
來る 來れ
形容詞的假定形是把詞尾い改為けれ。如:
寒い 寒けれ
安い 安けれ
ほしい ほしけれ
いい よけれ
形容動詞的假定形,是把詞尾だ改為なら。如:
嫌いだ 嫌いなら
効果的だ 効果的なら
きれいだ きれいなら。
C語言中if語句的三種形式到底是怎樣的
1)簡化形式
if(表達式) 語句塊
如: if(x>y) printf(“%d”,x);
2)一般形式
if (表達式)
語句塊1
else
語句塊2
例如:
if (x>y)
printf(“max=%d”,x);
else
printf(“max=%d”,y);
3)嵌套形式
含義:一條if語句重又包含另一個if語句稱為if語句的嵌套.
格式:
if( )
if( ) 語句塊1
else 語句塊2
else
if( ) 語句塊3
else 語句塊4
例如:
if (score>90)
printf(“very good”);
else
if(score>80)
printf(“good”);
else
if(score>60)
printf(“ok”);
else
printf(“bad”);
如果語句塊包含多個語句,用{}就行了
例如:
if(n>0)
{
printf("%d",n);
printf("是正數\n");
}
句型為【If+······+祈使句】十個句子
1,If it is cold,close the window! 2,If you are sleepy,go to bed! 3,If it is rainy,stay at home! 4,If you are alone,make more friends! 5,If you are a student,studyhard! 6,If the food have gone bad,do not eat! 7,If you are tired,take a break! 8,If you can,help others as more as possible! 9,If you have enough time,be together with your family! 10,If you want to study english well,practise more!。
在IF/THEN語句中,條件關系式有:
一. If … Then 結構:1. 格式:(1) If <條件> Then <語句> [:<語句>…](2) If <條件> Then <語句組> End If2. 功能: 當條件為真時執行Then后面的語句或語句組,否則執行后續語句。
二. If … Then … Else 結構:1. 格式: If <條件> Then <語句組1> Else <語句組2> End If2. 功能: 當條件為真時執行語句組1,條件為假時執行語句組2。3. 說明: 語句組1和語句組2都可以為新的條件語句,稱為條件語句嵌套的多分支結構。