c語言學習總結

2021-08-31 06:52:53 字數 2927 閱讀 3705

常量與變數:1.常量:

整數常量:包括正整數、負整數和0的整數。又分為符號整數常量(如int型,預設為有符號);無符號整形常量(後跟u,u);

長整數常量(後跟l,l);無符號長整數常量(跟lu;lu);

實型常量:為實數,一般是十進位制形式,小數要帶小數點,又分雙精度,單精度,長雙精度,(含有小數和指數形式)

字元型常量:用一對單引號引起來的乙個任意字元。可在輸出時用於輸出乙個固定字元,不加單引號為乙個變數;例如

cout<<『a』;與cout《字串常量:用一對雙引號引起來的0個或多個字元;同上,可用於輸出固定的字串;可輸出空格,也要加雙引號;若不加則也是變數;

2.各進製:二進位制:0010001=2º*1+2¹*0+...+2的六次方*0

八進位制相同:021=8º*1+8¹*2+8²*0

十六進製制前加ox,因為0~9為十位,則10~15為a~f;

3.變數:為可在程式中更改數值的變數。

關鍵字:是c語言預先設定的,有特殊意義的單詞;就像分成一座座倉庫,不同的資料型別可以抽調出不同型別。

4.位元組:int(四位元組);long(四位元組);short(2位元組);float(四位元組);double(八字節);一位元組為1b,1kb=1024b;1mb=1024kb;1gb=1024mb;1tb=1024gb;

ps:說明的變數若不賦值那麼會隨機取一值;要先宣告型別,即關鍵字;在程式中=為賦值號,==為等於號;在用if迴圈語句中不可以混淆,否則會導致輸出結果為if中的結果;

5+-*/運算:/若為整數,則其商的小數會被捨棄,只有宣告為浮點數,則不會捨棄。優先順序也為/*優先,+-要低一級。

++n幾n++運算:++n為先在n的基礎上+1然後運算,以新值運算;,n++是先算完再加一,以舊值運算;

--n與n--運算:與++n,n++大致相同,不過為-1。

6.在程式中難免用固定數值,例如π,那麼可以用const double   const為固定的整數不會改變。也可以用巨集常量:#define p。

7.在程式中難免有所轉換,可以加入(1.0)則可將整數轉換為小數。ps:在程式運算中乘法用*,且沒有平方,要乙個個乘。

8.   %d 十進位制整數

%e 浮點數,指數e的形式 %s 字串

%e 浮點數,指數e的形式 %u 無符號十進位制整數

%f 浮點數,小數點形式 %g 輸出%f與%e較短者

%o 無符號八進位制整數 %g 輸出%f與%e較短者

%x 無符號十六進製制整數,以0~f表示 %x 無符號十六進製制整數,以0~f表示

%l 長整型,加在d,o,u,x,x之前,如%ld

printf的修飾符:

(1)%ld,%lu,%lo,%lx,帶l修飾的格式碼要求long型整數作為其對應引數

(2)%2d則是寬度修飾符,作用是制定它所修飾的格式項所對應列印的字元數,如果帶列印的數值不能填滿位置,則左側會被補上空格字元以使這個字元數值的寬度滿足要求,如果太大則輸入寬度會適當調整以滿足需要

(3).%2d是寬度修飾符

轉義字元

意義ascii碼值(十進位制)

\a響鈴(bel)

007\b

退格(bs) ,將當前位置移到前一列

008\f

換頁(ff),將當前位置移到下頁開頭

012\n

換行(lf) ,將當前位置移到下一行開頭

010\r

回車(cr) ,將當前位置移到本行開頭

013\t

水平製表(ht) 

009\v

垂直製表(vt)

011\'

單引號039

\"雙引號

034\\

反斜槓*9.輸入與輸出:輸入有cin,scanf,cin輸入寫法簡單但是運算速度較慢,而scanf寫法比較麻煩但是算的很快,可以節約大量時間。cin格式:cin>>a;scanf格式:scanf("%d",a);輸出有cout,printf,cout特點與cin相同寫法簡單但輸出速度很慢,而printf為格式化輸出,故速度很快。若有時間控制,最好用scanf與printf,這樣可以節省輸入輸出的時間『要根據實際問題規劃~

選擇控制結構

1.解決一些簡單問題的程式,控制結構有很多,要細化步驟來,將問題化為乙個更簡單的問題,選擇控制結構又稱為分支控制結構。

2關係運算子:< > <= >=;要分寫,不能用數學中的表示方法,否則為錯。==為等於,!=為不等於,一定要加嘆號。

3.if語句  if語句使用:if(條件)執行語句 else 執行語句  else不能加條件 ,但可以用else if(條件),括號後不加分號,這樣可以解決許多多情況條件下的問題,如果成立則進行第一條執行語句,否則執行else的執行語句。例如 if(a>b)cout=a則輸出b的值。if語句可以簡寫,格式為:表示式1?表示式2:表示式3

這是唯一三位運算子

4.switch語句:

可用於解決多種情況的問題,相比於if語句要更簡潔。應用方法為

switch(表示式)

case a:執行語句;

case b:執行語句;

例如int a,b,d;

char c;

cin>>a>>b>>c;

switch(c)

case 『+』:d=a+b;

case......

這樣解決多分支問題會比if更簡單。

擴充:位運算子:

& 按位與 如果兩個相應的二進位制位都為1,則該位的結果值為1,否則為0

| 按位或 兩個相應的二進位制位中只要有乙個為1,該位的結果值為1

^ 按位異或 若參加運算的兩個二進位制位值相同則為0,否則為1

~ 取反 ~是一元運算子,用來對乙個二進位制數按位取反,即將0變1,將1變0

<< 左移 用來將乙個數的各二進位制位全部左移n位,右補0

>> 右移 將乙個數的各二進位制位右移n位,移到右端的低位被捨棄,對於無符號數,高位補0

break為結束語句,多用於迴圈。

在switch中可以用break。

C語言學習總結

1 c語言中有乙個賦值表示式,是其他多數高階語言中沒有的。2 c 語言的輸入與輸出操作是由函式來完成的,它不提供輸入輸出語句。3 c語言中有乙個共用體,其變數所點記憶體長度是其最長 成員變數的長度。4 static char a language char p a 8 5 void main int...

C語言學習總結

看了李明杰老師的c 語言課程,感覺老師講得很細 很透。收穫了很多新的知識,對cc 語言課程的學習總結。1.執行c 語言程式的步驟 1 編寫 c原始檔 2 編譯 c原始檔為 o目標檔案 3 鏈結 o目標檔案為可執行檔案 4 執行可執行檔案 2.常用格式符 1 d i 整數 int 2 f 小數 flo...

C語言學習總結

無參巨集定義 即巨集名後不帶引數。其定義的一般形式為 define 識別符號 字串其中各個名稱的含義如下 1 其中的 表示這是一條預處理命令。凡是以 開頭的均為預處理命令。2 define 為巨集定義命令。3 識別符號 為所定義的巨集名。4 字串 可以是常數 表示式 格式串等。例如 define m...