C語言程序設計基本語句和程序結構流程控制執行_第1頁
C語言程序設計基本語句和程序結構流程控制執行_第2頁
C語言程序設計基本語句和程序結構流程控制執行_第3頁
C語言程序設計基本語句和程序結構流程控制執行_第4頁
C語言程序設計基本語句和程序結構流程控制執行_第5頁
已閱讀5頁,還剩39頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

目錄基本語句關系運算符和關系表達式邏輯運算符和邏輯表達式分支程序設計循環程序設計基本語句(Statements)控制語句表達式語句函數調用語句空語句復合語句控制語句完成一定的控制功能C語言的9種控制語句if-elsewhilecontinueswitchreturnfordo-whilebreakgoto表達式語句形式expression;表達式最后加一個分號舉例a=3; /*賦值語句*/z=x*y,z++; /*一條語句*/x-y; /*語句,但無實際意義*/i++; /*語句*/i++ /*表達式,不是語句*/函數調用語句形式function(arguments);函數調用后加一個分號函數調用語句可以看作一種表達式語句舉例printf("%d",i);getchar();myfun(a,b);空語句形式;只有一個分號用法作為轉向點作為循環語句中的循環體舉例for(i=1;i<=100;i++)sum+=i;for(i=1;i<=100;sum+=i++);復合語句(塊語句,Block)形式{statements}用{}把若干條語句組合成為一個復合語句{}內可以沒有任何語句,可以只有一條語句,也可以有多條語句可以包括復合語句、空語句、控制語句等用法一個復合語句當作一條語句來使用需要把多條語句放在只允許一條語句的場合復合語句舉例intx,y,t;if(x>y){ /*復合語句開始*/t=x;x=y;y=t;} /*復合語句結束*/printf("%d,%d",x,y);C語言語句使用說明除復合語句外,語句都以分號;作為結束語句書寫格式比較自由,確定語句結束的唯一標準是分號(;)注意區分表達式和表達式語句,它們的用法不同舉例,if((a=b)>0)t=a;錯例,if((a=b;)>0)t=a;舉例,if(x>y){x--;y++;}錯例,if(x>y){x--;y++}關系運算符(RelationalOperators)運算符名稱舉例優先級(算術運算符)<小于i<100高<=小于等于a<=MAX>大于f>3.14>=大于等于c>='a'==等于a==b低!=不等于x!=0(賦值運算符)關系表表達式式用關系系運算算符將將兩個個表達達式連連接起起來a+b>c+d,(a=3)>x注意區區分等等于(==)和賦賦值運運算符符(=)a=b,a==b關系表表達式式的值值是邏邏輯值值—““真””或““假””C語言言用整整型表表示邏邏輯值值,““真””—1、““假””—0舉例,,a=3,b=2,c=1;d=a>b;/*d=1*/f=a>b>c;/*f=(a>b)>c=0*/邏輯運運算符符(LogicalOperators)運算符名稱舉例優先級!邏輯非!(a>b)(算術運算符)(關系運算符)&&邏輯與(x>y)&&(y>z)||邏輯或(x>3)||(x<-3)(賦值運算符)邏輯運運算規規則!a若a為“真真”,,!a為“假假”若a為“假假”,,!a為“真真”a&&b若a、b都為““真””,則則a&&b為“真真”若a、b不全為為“真真”,,則a&&b為“假假”a||b若a、b都為““假””,則則a||b為“假假”若a、b不全為為“假假”,,則a||b為“真真”邏輯表表達式式邏輯運運算符符把邏邏輯量量或表表達式式連接接起來來(y%4==0&&y%100!=0)||(y%400==0)邏輯表表達式式的值值是邏邏輯值值用整型型表示示邏輯輯值“真””1,,“假假”0把一個個表達達式的的值作作為邏邏輯值值使用用非零“真真”,,零“假””這里的的非零零與零零,包包括整整型、、浮點點型等等邏輯表表達式式舉例例inti=3;charc='a';floatf=0.0;i==0;!i;/*兩者邏邏輯值值相同同*/i!=0;i;/*兩者邏邏輯值值相同同*/c&&!f;/*“真””*/i&&1.23||f;/*“真”*/c&&4&&f;/*“假”*/邏輯表達達式求值值特點邏輯表達達式中的的運算符符,只有有會影響響表達式式求值時時,才會會執行a&&b&&c若a為“假””,則不不再判斷斷b和ca||b||c若a為“真””,則不不再判斷斷b和c舉例,(m=a>b)&&(n=c>d)DeMorgan定定理!(a&&b)(!a)||(!b)!(a||b)(!a)&&(!b)!((a&&b)||c)(!a||!b)&&!c分支程序序設計if語句條件運算算符?:switch語句分支程序序設計舉舉例if語句句的三種種形式if(expression)statementif(expression)statement1elsestatement2if(expression1)statement1elseif(expression2)statement2elseif(expression3)statement3......elseif(expressionn-1)statementn-1elsestatementnif語句句的說明明無論哪種種形式,,一條if語句,包包括else或elseif子句,只只算作一一條語句句if語句中的的子句,,可以是是一條任任何類型型的語句句,包括括表達式式語句、、空語句句、復合合語句、、控制語語句子句末尾尾的分號號,只表表示子句句的結束束,不表表示if語句結束束注意復合合語句末末尾沒有有分號else子句都是是可以沒沒有的if語句句舉例if(x>y)/*y為x和y的較大值值*/y=x;if(x>y)/*d為x和y之間的距距離*/d=x-y;elsed=y-x;if(x>y);/*合法,但但沒有實實際操作作*/if語句句的嵌套套if語句的各各子句都都可以又又是if語句應注意if-else的配對關關系else總是與其其上面最最近的if配對可以用{}明確if-else的配對關關系if(exp1)if(exp1)if(exp2){if(exp2)statement1statement1}elseelsestatement2statement2條件運算算符(ConditionalOperator)條件運算算符?:條件表達達式exp1?exp2:exp3先判斷exp1若exp1為““真”,,表達式式的值為為exp2的值值若exp1為““假”,,表達式式的值為為exp3的值值舉例,max=(x>y)?x:y;同:if(x>y)max=x;elsemax=y;switch語語句switch(expression){caseconst-exp:statementscaseconst-exp:statements......caseconst-exp:statementsdefault:statements}switch語句的的說明先求switch后表達式的的值,若此此值與某個個case后的常量表表達式的值值相等,則則跳轉到這這個case后的語句;若沒有相相等的常量量表達式,,則跳轉到到default跳轉后程序序一直往下下執行,不不會因為遇遇到另一個個case而直接跳出出switch根據實際需需要,可以以沒有default若需要跳出出switch,可使用break語句case和default的順序不影影響執行結結果switch語句舉舉例(1)switch(day){/*打印星期的的縮寫*/case1:printf("Mon.\n");break;case2:printf("Tue.\n");break;case3:printf("Wed.\n");break;case4:printf("Thu.\n");break;case5:printf("Fri.\n");break;case6:printf("Sat.\n");break;default:printf("Sun.\n");}switch語句舉舉例(2)switch(deptno){/*根據系編號號打印學院院*/case15:case16:case17:printf("商學院\n");break;case18:case25:printf("人文學院\n");break;case7:printf("地空學院\n");break;default:printf("其他學院\n");}分支程序設計計舉例求一元二次方方程的根當a=0時,不是是一元二次方方程當a≠0時,方程的的根為當b2-4ac≥0,方程有兩兩個實根當b2-4ac<0,方程有有兩個共軛復復根例1:求一元元二次方程的的根循環程序設計計while語句do-while語句for語句break和continue語句循環程序設計計舉例while語語句while(expression)statementwhile型循環先判斷表達式式,后執行語句一般情況下,,循環中應含有能使使循環語句結束的操操作statementabexpr.真假while語語句舉例inti,sum;i=1;sum=0;while(i<=100){sum+=i;/*循環體縮進書書寫*/i++;/*使循環趨向結結束*/}do-while語句dostatementwhile(expression);類似于Until型循環環先執行一次循循環體語句,后判斷斷表達式statementabexpr.真假do-while語句舉舉例inti,sum;i=1;sum=0;do{sum+=i;i++;}while(i<=100);do-while與Until型循循環do{sum+=i;i++;}while(i<=100);C語言形式repeat{sum+=i;i++;}until(i>100);Until型型循環for語句for(expr1;expr2;expr3)statementexpr1;while(expr2){statementexpr3;}for語句的的說明三個表達式的的說明expr1:初始化expr2:循環條件expr3:一般是循環變變量的改變三個表達式都都可以省略分隔表達式的的分號不能省省略expr1省略,不進行行初始化expr2省略,認為循循環條件永為為“真”expr3省略,不在這

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論