天天看點

const定義常量_幹貨 | C語言系列3——常量,運算符,常用數學函數......

本期總結

1、符号常量和const常量;

2、運算符;

3、輸入與輸出;

4、常用數學函數。

const定義常量_幹貨 | C語言系列3——常量,運算符,常用數學函數......

往期回顧

幹貨 | C語言系列1——程式設計軟體與做題平台

幹貨 | C語言系列2——程式結構與變量

符号常量和const常量

1.符号常量

    符号常量通俗來講就是“替換”,又稱為宏定義。格式如下:

    #define 辨別符 常量

    宏定義可以定義單個變量為常量,也可以定義某個語句或片段。

    宏定義有一點需要特别注意,它隻是“機械”替換,并不會自己加括号哦,比如:

#define x b-2    #宏定義(沒有分号 ; )

...

y = x*3;   #求y

    此時,結果是:y = b-2*3,而不是我們想看到的y = (b-2)*3!!!

2.const常量

const  變量類型  變量名 = 常量;

    這兩種寫法被稱為常量,是因為它們一旦定義,就不能改變該變量的值。在定義單個變量為常量時,推薦使用const。

運算符

    常用的運算符有算術運算符,關系運算符,邏輯運算符,條件運算符,位運算符等等。

1.算術運算符

    +,-,*都直接用,沒有什麼特殊說明;

    /需要注意,若兩個數均為int型,相除後結果會自動向下取整,若要有小數部分,則需要強制轉化類型為float或double(因為double精度較高,是以推薦double);

    %為取模運算,在需要區分開個位十位百位等各個位的數字時,常用;

    ++自增,--自減;

    自增自減寫法有兩種:

    i++/++i       i--/--i

    差別在于第一種是先使用i再加(減)1,第二種是先加(減)1再使用i。

    y = y+3等價于y += 3;

    其他算術運算符類似。

2.關系運算符

    常用的有,<=,>=,==,!=。特别要注意==,一個=是指派。這種在判斷語句中很容易出錯,比如:

if(y = 2)  ...

    在這個語句中,應該寫==,這種情況編譯器不會報錯,自己也較難發現這種錯誤。在程式設計中,很多人為了避免這個錯誤發生,會這樣寫:

if(2 == y)  ...

    将常量寫在前,如果少寫一個=,編譯器就會報錯。

3.邏輯運算符

    &&, ||, !分别對應與,或,非

    一定要記得是兩個&,兩個|,否則會變成位運算!

4.條件運算符

    是C語言中唯一的三目運算符,格式如下:

a ? b : c

    若a為真,則取b,否則,取c。

例:

int a = 3, b = 5,  c = 7, d = 9

int e = a>b ? c : d;

此時,a>b為假,是以e = d,即9。

5.位運算符

const定義常量_幹貨 | C語言系列3——常量,運算符,常用數學函數......

輸入/輸出

    C語言中必不可少的輸入輸出函數scanf與printf,在頭檔案stdio.h中,這也是C語言中最為基礎的。在這裡,我主要總結一些需要注意的點。

1.scanf

scanf("格式", 變量位址)

    不同的資料類型對應不同的格式,如下:

const定義常量_幹貨 | C語言系列3——常量,運算符,常用數學函數......

    可以看出,數組名沒有取位址符&,因為數組名本身就是那個數組的首位址。其他輸入變量的情況,不能漏掉&;

    scanf除了對于%c,其他格式都以空格,回車等作為結束标志,而%c可以取到空格,換行,是以,getchar( )和putchar( )在這種情況下可以使用,當你想抛掉空格,換行符,或者抛掉某個不要的字元,可以直接用getchar( ),不給相應的變量即可。putchar( )是輸出某個字元。

2.printf

printf("格式", 變量名)

const定義常量_幹貨 | C語言系列3——常量,運算符,常用數學函數......

    可以看出,double類型在輸入時格式為%lf,在輸出時格式為%f,雖然在一些編譯器中輸出為%lf也沒錯,但最好還是按照标準來。

    還有3種實用的輸出格式:

(1)%md

    不足m位的變量以m位右對齊輸出,前面補空格,若超過m位,則保持原樣。

(2)%0md

    不足m位的變量以m位右對齊輸出,前面補0,若超過m位,則保持原樣。

(3)%.mf

    保留m位小數。這裡的保留使用的規則是“四舍六入五成雙”,若要“四舍五入”,則需要用round( )函數。

常用數學函數

1.round(double x)

    該函數為對double型變量進行四舍五入的函數,傳回類型也是double型,若需要輸出整數,最終結果需進行取整,即強制類型轉換。

2.floor(double x)和ceil(double x)

    分别對double型變量進行向下取整和向上取整。

3.pow(double x, double y)

    求x的y次方。一定要注意x, y都為double型。可以這樣寫:

z = pow(2.0, 3.0)

4.sqrt(double x)

    将x開方,傳回double型變量的算術平方根。

5.log(double x)

    傳回double變量以自然對數為底的對數。若要求自然對數以外的底的對數,需要用換底公式:

const定義常量_幹貨 | C語言系列3——常量,運算符,常用數學函數......

參考資料:《算法筆記》

const定義常量_幹貨 | C語言系列3——常量,運算符,常用數學函數......

先把基礎夯實

再大步向前走吧

const定義常量_幹貨 | C語言系列3——常量,運算符,常用數學函數......
const定義常量_幹貨 | C語言系列3——常量,運算符,常用數學函數......

趙姐的小屋,

等你關注~