導讀:程式要完成高階功能,首先要能夠做到基本的加減乘除。本章從程式中變數的概念開始,結合之前學的輸出函式和新介紹的輸入函式製作簡單人機互動程式,然後講解最基礎的加減法運算,自製簡單計算器程式練手。
5.1 變數
5.1.1 變數宣告定義與賦值表示式
上一章講了資料型別,資料型別要和變數結合在一起才能夠在c語言程式中體現出它們的作用,一般的變數是這樣定義的:
資料型別 變數名;
變數名可以是26個字母中的任意乙個,也可以是非c語言關鍵詞的單詞或自定義字母組合,也可以加下劃線等等,我們就先用簡單字母來命名吧,比如宣告乙個整型的變數a,如下:
int a;
也可以定義多個變數,變數名之間用逗號隔開,最後加分號表示結束,如下:
int a,b,c,d;
也可以在定義變數的時候,直接賦值,這就要用上賦值表示式,如下:
int a = 3;
賦值的意思就是賦予數值,也可以多個一起,如下:
int a = 3, b = 4, c = 5;
當然也可以定義完變數後,再給變數賦值,如下:
int a;a = 3;
請注意,c語言中,規定變數定義必須是**的最開始部分,比如以下在c語言不建議這麼做,雖然剛才的方式用dev-c++不會報錯,但是不代表別的編譯器不會報錯,如下:
#include
void main()
因為c語言的編譯規則有多種,所以建議變數宣告定義放在**開始部分,以下比較規範,
注意:c語言編譯標準隨著時代的變遷做幾次改變,如最開始的c89然後有c99以及最新的c11,後續文章講解到編譯規則的時候再剖析這部分。
#include
void main()
5.1.2 初識格式化輸出
如何檢視變數www.cppcns.com的值,可以用debug的辦法(後續再講解用dev-c++上斷點除錯辦法),也可以通過printf這個c庫函式檢視,**如下,執行結果如圖5.1,
#include
void main()
圖5.1 printf輸出情況
可以看出輸出為「a = 10」,在printf語句中,printf(「a = %d」, a);,其中「a = 」是要輸出的字串,就像之前輸出「hello world」一樣,寫什麼就輸出什麼,%d表示這段字串後面輸出的變數值,按照十進位制整型輸出,下面來點複雜的,然後再解釋啥是格式控制符,**如下,執行結果如圖5.2,
#include
void main()
圖5.2 稍微複雜的printf輸出
按照乙個蘿蔔乙個坑的原則,第乙個「%d」對應乙個輸出「a」,第二程式設計客棧個「%x」對應下乙個輸出選「a」,第三個「%d」對應「b」,最後乙個「%c」對應「b」。請記住,一定要一一對應,否則會有意想不到的錯誤哦。
c語言有規定格式控制符,在輸出函式printf(「」)的冒號「」裡面,如果有百分號%號出現,下乙個字母會有它獨特的意義:
比如d,表示按照十進位制格式輸出,
比如x,表示按照十六進製制格式輸出,
比如c,表示按照單個字元格式輸出。。。。。。當然還有很多,現在先介紹這些。
注意:字元一般會涉及ascii碼表,這部分知識怕初學者負擔太重,放後面再介紹。
5.1.3 再來乙個c庫函式scanf以及格式化輸入
螢幕顯示的程式中的資料,叫做輸出,敲鍵盤傳入程式中的資料,叫做輸入。輸出函式一般用printf,輸入函式一般用scanf。下面來寫一段程式,程式大體思路是,先定義乙個變數a,然後用輸入函式scanf給a賦值(通過鍵盤敲的數值),最後通過輸出函式printf在螢幕顯示a的數值,**如下:
#include
void main()
注意:scanf語句中,a前面有個字元是&,讀者可以看看鍵盤上那一排數字鍵,對了就在數字7這裡,鍵盤要輸入&,可以通過按住鍵盤shift鍵+數字鍵7,如圖5.4,
圖5.3 鍵盤
寫好**後,編譯執行,發現控制台一片黑,如圖5.3,
圖5.4 控制台一片黑
可以看到有個游標在閃爍,請用鍵盤輸入123試試看,然後再按下回車按鍵,結果如圖5.4,
圖5.5 執行結果
從結果上可以看出,輸出的「a = 」加上剛才鍵盤輸入的123一起在螢幕上顯示出來,這就是最基本的輸入輸出函式的使用了。下面講解這段程式:
scanf中,變數前面有個符號「&」想必讓人產生了困擾,「&」符號叫做取位址符號,之前講過記憶體存放資料的,每個資料都有它的位址,希望後續講解指標的時候讀者會有更清晰的了解。希望讀者不用困擾,為什麼不直接這麼寫:scanf(「%d」, a),而要這麼寫:scanf(「%d」, &a),差別在於是否有「&」,請先這麼用著吧!
為了更加人性化,在scanf前新增一段printf提示即將輸入的字元格式,再新增char型格式輸入,下面一段**會比之前稍微複雜那麼一點點,
#include
void main()
編譯執行後,在提示語出現後,在冒號:後面輸入400,k,執行結果如圖5.5,
注意:在**的scanf中,有用逗號,來隔開b和f的取值,所以在螢幕輸入的時候,也要用逗號隔開整型和字元型,最後回車鍵顯示結果。
圖5.6 執行結果
這樣整型型別的b就被賦值400,字元f就被賦值『k'了。當然讀者可以賦值不同的數值大小,請記住這些型別的取值是有上下限制的,如果超過可能會有意想不到的後果,可以在第四章檢視表4.1找到基本資料型別的取值限制,至於字元可以輸入26個字母中的乙個,或者一些標點符號等等。
以上知識點大家有沒有學會呢,感謝對我們的支援。
本文標題: 初學c語言基本運算和表示式
本文位址: /ruanjian/c/267805.html
c語言運算子和表示式
第六次課 運算子與表示式 一 運算子和表示式 運算子 表示式 由運算元和運算子組成的式子,如 a b,1 2 c語言中單一的乙個變數或者單一的乙個常量是最簡單的表示式 提問 以下程式是輸出變數的值還是表示式的值?int main void 總結 永遠輸出表示式的值!1.優先順序與結合性 優先順序 參...
C語言運算子和表示式
概述 c語言一共有34種運算子,10種運算型別 算術運算子 關係運算子 位運算子 邏輯運算子 條件運算子 指標運算子 賦值運算子 逗號運算子 求位元組運算子 sizeof 強制型別轉換運算子 型別名 其他 下標 分量 函式 若按參與運算的物件個數,c語言運算子可分為單目運算子 如!雙目運算子 如 和...
初學C 之運算子和關係表示式
一元運算子 前加和後加區別,事例 在後如下 int age 18 int sum age 10 結果age 19 說明age 在表示式中age的值也 1.結果sum 8,原因age 在後用age的原值進行計算 console.writeline sum age sum,age 事例 在前如下 int...