C語言程序設計總結_第1頁
C語言程序設計總結_第2頁
C語言程序設計總結_第3頁
C語言程序設計總結_第4頁
C語言程序設計總結_第5頁
免費預覽已結束,剩余12頁可下載查看

下載本文檔

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

文檔簡介

1、c語言程序設計總結C語言程序得基本結構#inc 1 ude “ stdio.h ” vo i d main()定義變量;程序實現;輸出結果;pr intf二、變量得定義1. 整型:int a , b, s=0;?長整型:long無符號整型(非負整數):unsign e d2。單精度實型:floa t X , y , z=1 。 03。雙精度實型:dou b le l,m;4、字符型:char c1 = A , 2= b :(可以在定義得同時為變量進行賦值)三、變量得賦值1. 直接賦值:a =10;2. 賦表達式得值:a=3+3. 賦另外一個變量得值 變量得輸入: 輸入一個變量 輸入多個變量in

2、 t - % d%s變量得輸出:輸出一個提示語句:pr in t f( X X xxx x ); 輸出一個回車:printf(n ”);輸出一個變量:printf( xxx is % d ”, a);輸出多個變量:p rintf( xxxx% d , xxxx% d ,a,b)練習:1.輸入圓得半徑,求圓得周長。/用賦值號“=”將右側得值賦給左側得變量7 ;:a=s;/把s得值賦給a:seanf( % d”,& a);:sc a nf( %d %d% d ”,& a,& b, & e);fl oat - % fc har- % c d ouble% l f字符串四、常用流程控制語句分支語句:根

3、據條件執行相應得語句 條件得形式:a大于0 寫成 aa小于0 寫成a等于0 寫成a 0a = 0a大于等于0并且小于等于10 a小于0或者a大于10(注意,用兩個=)寫成 a=0& & a =10寫成 a 0 I | a1 00(一) 單分支 if 語句 (如果滿足某個條件 ,就做某件事情 ,不滿足就向下執行。 )i f(條件)執行語句 ;(二) 雙分支i f語句(如果滿足某個條件,就做某件事情,否則就做另外一件事情。)i f( 條件 )執行語句 1; else執行語句 2;(三) 多分支if語句(滿足哪一個條件,就做相應得語句。)i f (條件1 ) 執行語句1 ;el se i f (條件

4、 2)執行語句 2; el s e if(條件 3) 執行語句 3;e lse if (條件 4) 執行語句 4;else 執行語句 5; (四)if得嵌套(根據具體情況對i其格式如下 :if(條件1)if (條件 2) 執行語句 a; else 執行語句 b; e 1 sei f (條件3 ) 執行語句else 執行語句(五)多分支語句 sw itfelse -語句進行靈活得運用)C; d; ch因為它得作用完全可以用多分支switC hCaseCase( 表達式 )C a se值1:語句1 值2: 語句2值3: 語句(根據switch后得值,執行相對應得c ase語句,此語句了解即可, i

5、f 來實現 );b rea k ; ; break;b reak; 4;值 n: 語句 n;語句n +1;b reak;Ca sedefault:練習:2.某自助餐廳規定,浪費食物在20克以下得,每克罰款2元;如浪費超過2 0克,則超過得部分每克加罰1元。編程求罰款金額。從鍵盤輸入正方形得邊長,如果邊長大于零則求出該正方形得周長與面積,否則提示輸入錯誤。輸入3個數x,y,z,求其中得最小值。輸入3個數X, y ,z,將其中最大值放在X中,最小值放在Z中,中間值放在y 中,然后輸出x,y,z。循環語句:在條件成立時重復執行一組語句(一)當型循環w h ile(條件)循環體3.4.5.wh ile

6、例如:求1+ 2 + 3 +100 1 nt n =1, s =0;whi le (n=1 0 0)s= s+ n ; n =n + 1;(二)直到型循環dowhiledo循環體 whi l e(條件);例如:求 1+ 2 + 3+-100 intn=1, s =0;do(三)知起至型循環forfor(循環變量初值;循環變量范圍;步長) 循環體(四)循環得嵌套fo r( 1 =1;i n;i+ +)for(j = 1;j m ;j+)s=s+n;n =n+1; whi l e( n =1 00); 例如:求 1+2+ 3 + -100int n =1,s= 0 ;fo r (n= 0 ;n =

7、1 00;n+) s=s+n;說明假設某同學參與“打氣球游戲,該同學可以打5局,每局可以打10槍、這里得每局10槍就相當于內循環得次 數;5局就相當于5個1 0槍,也就就 是外循環得次數。這5*10槍不就是一次性打完得,而且 每一槍都要記就是哪一局得哪一槍 打出來得成績,哪一局對應得就是i,哪一槍對應得就是j、(五)使用b r e a k可以強制退出循環,其用法必須配合i f來使用: 例如:f 0 r (i = 0;i 10 O;i+)i f (條件)b r e a k;練習:12編程求出公式s=1 1/ 3 + 1/ 5 1/ 7 +1 /101得值并輸出 編程輸出如下圖形 :*34* *

8、* * 編程打印九九乘法表編程打印出20 1 6年1月份得日歷注意:1月份得總天數就是3 1天,其中1日就是星期五。 日歷如下 :六日12?38 9?1014151?61722 23 2 44 5?6?71 112? 1318 19?20?2 125 26?27 30?29?28? 31 voidint?n = 31; d=5;?pri n t f (”m a in(),n,d;/ i就是循環變量,n代表總天數,d代表星期;/n 代表一個月得天數/d 代表星期,星期一為 1,星期五為 5,星期日為7一二三 四五六 日、n);/ 一個漢字占兩個字符得位置二?三?四五f o r(i=1;i d;i

9、+ +)/開始日期之前用空格占位,每個日期對應3個空格? pri ntf ();?fo r (i= 1 ;i = n; i+ +,d + +)?p r i ntf( % 3 d , i );? if (d % 7= = 0)?printf( n);? 5。在第 4 題得程序上進行修改 ,如果輸入任意一個月得總天數及該月第一天得 星期(1代表星期日,2代表星期一以此類推),能否打印出該月日歷6 .計算X得n次方(X為雙精度,n為非負整數)v o i d main() ?double x,s;u n signed n , i ;?s =1;?p rin t f(請輸入 X 與 n :);scanf

10、( %1 f% u ,&x,&n); fo r(i=s= s? p rintf(1 ;i =n;i + + )* X;j ie g u o is %.2lf” ,s);?四、數組一維數組1、一維數組:名字相同且帶有下標得一組變量2、定義形式:類型名 數組名長度例如:int a 1 0/a數組中包含有10個整型變量,名字分別就是 a 0、a 1 、a:2:a 9 :這里每一個a n都就是一個普通得整數變量一維數組得初始化:定義數組得時候就給每個數組元素賦值int a5 = 2 ,4,6,8, 10;對a數組中得每一個元素依次進行操作(訪問)得方法如下:i nt i;f o r( i = 0 ;i

11、 9; i + + ).ai例如:通過鍵盤輸入給a數組中得每個元素賦值將a數組中每一個元素都擴大2倍統計a數組中奇數得個數求a數組中得最大值把a數組得元素進行逆置從一維數組中查找X ,并返回X所在得位置,否則提示沒有找到。 求fibo n acc i數列得第n項。求任意一個數得1.21、6倍存入數組。 數組中存入10個數并進行循環左移把a數組中得元素進行右移 練習:1 .2.3.4.二維數組1. 二維數組:名稱相同且帶有2個下標得一堆變量,邏輯上可瞧成n行m列得二維表格、2. 定義形式:類型名 數組名行長度列長度例如:i n t a : 3 : 4:這里a數組中包含有3X 4 = 12個數組元

12、素,這12個元素得名字分別就是:a :0: 0 ?a :0: : 1?a0 :2:a :0: :3a : 1: 0 : ?a1 : : 1: ?a : 1: : 2: ? a 1 : : 3:a 2 0 a 2 :1: a : 2 : 2: ?a23 :3. 二維數組得初始化:int a : 3: 4 = 1, 2 ,3,4,5,6,7,8 ,9,1 0 , 1 1,12 ;對a中數組元素得訪問,需要定義2個下標變量i與j,a i: j代表第i行第j列得元素。按行得順序訪冋:按列得順序訪問:int i,j;in t i, j ;fo r(i = 0;i3;i+)for(j=0; j 4;j+)

13、f or(j=0; j 4 ;j+)for(i= 0 ;i = 0 ;字符串常用函數:注意:用以下函數需要用# 連接字符串:strcat(st 比較兩個字符串得大小 求字符串得長度:stinclu d e string、h引入頭文件。 r 1,st r 2):s tr cm p ( s tr 1 ,str2);r le n( st r1);在字符串中查找一個字符,并返回其位置:char c=a ”;strc hr (s t r1, c); 復制字符串:s tr cp y (s t r3,str1);在字符串s t r 1中查找字串str 2得位置:st rst r(st r1 , st r2)

14、5。字符串常見操作把字符串逆置 判斷就是否為回文五、函數(一)函數得定義:1.無返回值、無參函數得定義:void 函數名()定義變量;實現功能; 返回;例:定義一個能夠輸出10個”* 得程序。void f 1()int i;fo r (i= 1 ;i =10;i+)pr i n t f( *”);return;2、無返回值、有參函數得定義:例:定義一個能夠輸出n個”* ”得程序vo i d 函數名(參數定義列表)V o i d f2(i nt n )定義變量;int i ;實現功能;f or (i=1;i= n;i+)返回;pr i ntf(r e tu rn ;例:定義一個能夠輸出id f

15、3( c harVO洙 ”);n個指定字符得程序、C ,int n)int i ;i+)f o r( i = 1;i= npr i n t f( %c :c); return;3. 有返回值有參函數得定義: 類型 函數名(參數定義列表)定義變量;實現功能;返回計算結果;這里類型”一定要與”計算結果”一致。 例:定義一個計算兩個整數加法得函數。int f4( i nt x,int y)return (x+ y );例:定義一個能判斷奇數得函數i nt f5 (int x)?if( X %2=1)r eturn 1;els ereturn 0 ;(二) 函數得調用1. 無參函數調用:函數名(),或

16、者一個已經有值得變量,也可以就是一個表達式、 ,也可以參與到表達式中進行計算。2. 有參函數調用:函數名(實參列表)這里得實參可以就是一個具體得值3. 函數得調用可以成為一個獨立得語句 例如:調用f1函數:fl ()2 0;f2(n);調用f2函數:f2( 5 ) 或int n =函數:f 3 (#:1 0 ) 或 char cc= $ ;int n = 8; f3(cc, n ); 函數:int s, a =1,b = 2;s= f4 (a,b); 函數:i nt x=7;i f(f5(x) else pr i(三) 指向一維數組得函數:f1(i n t a , i nt in t i ;f

17、 o r(i = 0; i n;i+)? 調用調用調用f3f4f5P rintf (奇數) n t f (偶數);n)a i :;void main()in t a : 10: = 1 ,2, 3 , 4 ,5,6,7,8,9,1 0 ;f 1(a,10);練習:求1 0 個數得與 求10個數得平均值 把1 0個數逆序輸出 求1 0 個數中得最小值(四)指向字符串得函數 :f2(ch ar s )int i;f o r (i=0;s i!= 0 ;i+ )s : i:; 使用自定義函數得要點 :1.2.3.自定義函數要寫在 main 函數得上方 在分析程序得運行時要知道,程序得執行從 ma i

18、n函數開始,在main中結束4.5.6.練習 (全都用函數實現 ,輸入輸出由主函數負責,功能實現由自定義函數負責):(操作)自定義函數可以接收主函數傳遞得多個參數 自定義函數每次只能返回一個結果給主函數 自定義函數可以通過指針對主函數中得數值進行直接訪問 輸入操作一般交給mai n函數求任意兩個數得與、差、積(用三個自定義函數實現 )求任意兩個數得余數 , 如果輸入得除數為 0 要輸出警告信息 交換兩個變量計算X得10次方(X為雙精度)求等比數列2 4 8 1 63 2得第n項查找字符 c 在字符串 s 中第一次出現得位置 連接兩個字符串/ 連接兩個字符串 /# inclu de st d i o .h#inc 1 ud e s tring、h ”Void f1(char s1 : , c h ar s2

溫馨提示

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

評論

0/150

提交評論