#include /*呼叫標頭檔案*/
int main () /*宣告主函式*/
ps:
小結
1.選擇需要的型別。
2.使用有效的字元給變數起乙個變數名。
3.按以下格式進行宣告:
型別說明符1.scanf函式和printf函式
之所以將這兩個函式放在一起是因為它們分別是輸入/輸出函式,也就是i/o函式,關係較為緊密。
scanf("轉換說明",&對應的變數名);
printf(格式字串,各待列印項);
需注意,scanf函式在對應的變數名前加「&」即表示讀取基本變數型別的值,如果不加「&」則表示把字串讀入字元陣列中。
而printf函式如果只列印短語或句子,則只需要字串即可。
例如:
#include int main ()
這段**如果你輸入 18 4000 皮皮(注意空格)
那麼程式就會輸出:
18
4000.00
皮皮
轉換說明
輸出%a
浮點數、十六進製制數、p記數法
%a浮點數、十六進製制數、p記數法
%c單個字元(char)
%d有符號十進位制整數(int)
%e浮點數、e記數法
%e浮點數、e記數法
%f單精度浮點數(float)、十進位制記數法
%lf雙精度浮點數(double)
%.nf
十進位制記數法,其中n表示精確到小數字後n位.
%g根據值的不同,自動選擇%f或%e,%e格式用於指數小於-4或者大於等於精度時
%g根據值的不同,自動選擇%f或%e,%e格式用於指數小於-4或者大於等於精度時
%i有符號十進位制整數(與%d相同)
%o無符號八進位制整數
%p指標
%s字串
%u無符號十進位制整數(unsigned int)
%x無符號十六進製制整數
%x無符號十六進製制整數
%%列印乙個%
修飾符含義-
待列印項左對齊。即,從字段的左側開始列印該項項。例如:「%-20s」
+有符號值若為正,則在值前面顯示加號;若為負,則在值前面顯示減號。例如:「%+6.2f」
空格輸出的數字若為正,則保留空格,否則將負號代替空格。
#將結果轉化為另外一種格式,比如列印八進位制或十六進製制為其新增各自的字首,如八進位制的字首是0,十六進製制的字首是0x或0x;
0對於數值格式,用前導0代替空格填充字段寬度。若是整數格式,出現了-格式或指定精度,則忽略該標記
數字如果輸出數字的寬度小於限定的寬度,則左邊補空格;如果大於限定的寬度,則系統會自動用更寬的字段,即左邊只輸出該數字。
.數字.後面的數字代表該數字小數點後面的位數,若限定的位數大於該數的小數點位數,則添0來達到限定的位數
轉換說明
含義%c
把輸入解釋成字元
%d把輸入解釋成有符號十進位制整數
%e、%f、%g、%a、%e、%f、%g、%a
把輸入解釋成浮點數
%i把輸入解釋成有符號十進位制整數
%o把輸入解釋成有符號八進位制整數
%p把輸入解釋成指標
%s吧輸入解釋成字串
%u把輸入解釋成無符號十進位制整數
%x、%x
把輸入解釋成有符號十六進製制整數
~找了張圖,實在打不動了~
2.if語句
if(表示式)一條語句
或if(表示式)
程式在執行時會先判斷if後面的括號內的內容為真還是為假,為真則會執行if後的語句,為假則會跳過該if後的語句,注意如果給if後填乙個變數如if(x),則如果x為0則為假,如果x不為0則為真,即使x是負數。
if(表示式)
語句塊1;
else
語句塊2;
這個語句簡單理解就是如果if後的表示式判斷為真則執行語句塊1;否則(即為假)就執行else後的語句塊2。
if(表示式1)語句1
else if(表示式2)語句2
else if(表示式3)語句3
......
else if(表示式n)語句n
else 語句m
執行流程:首先對if後的表示式1進行判斷,為真則執行語句1,為假則繼續判斷表示式2,為真執行語句2,為假則繼續判斷表示式3,以此類推。
3.switch語句
switch(表示式)
執行流程:對switch後的表示式進行判斷,執行符合的case情況,如果沒有符合條件的情況,那就執行default後的預設情況語句。
需注意:switch語句檢驗的條件必須是乙個整形表示式,而case語句檢驗的值必須是整型常量。
switch(表示式)
如果在case2後不使用break語句跳出,那麼符合檢驗時與符合case3檢驗時的效果是一樣的。
也就是說,使用多路開關模式使得多種檢驗條件使用同一條解決方式。
4.while語句
while(表示式)語句
或while(表示式)
執行流程:while語句先判斷表示式為真還是為假,為真則會執行while後的語句或語句塊,每執行完一次,程式都將重新對while後的表示式進行判斷;如果一開始判斷為假,則跳過迴圈體中的語句,直接執行後面的程式**。所以如果你打乙個while(1),則該語句會一直判斷為真,進而執行無數次,這樣的迴圈語句被稱為死迴圈或無限迴圈。
do
迴圈體語句
while(表示式);
do…while語句的特點在於執行流程的細微變化,該語句會先執行一次迴圈體語句,然後再對while後的表示式進行判斷,為真則再次執行,為假則跳過,所以該語句無論表示式為真還是為假,都至少會執行一遍迴圈體的語句內容。
5.for語句
for(表示式1;表示式2;表示式3;)
執行流程:
1.求解表示式1。
2.求解表示式2,若其值為真,則執行for語句中的迴圈體語句,然後執行步驟3;若為假,則結束迴圈,轉到步驟5.
3.求解表示式3。
4.回到步驟2,再次執行。
5.迴圈結束,執行下一段程式**。
上面的幾個基本函式/語句中if語句,while語句,for語句都可以進行語句的巢狀,具體的巢狀技巧用文字表達不但費力而且效果甚微,建議讀者自己找幾個巢狀的**自己除錯看看,知行合一,在實踐中去掌握那些技巧。
C語言學習小結
這學期學了c語言,對c語言有了乙個簡單的了解與初步的認識。首先從程式結構的使用與學習開始學起,到後來陣列 函式的初步了解,能夠開始解決一些簡單的c語言問題,但是要想深入解決一些難題,還要等到下學期學習演算法及函式 指標的深入才能做到得心應手。這學期只是認識階段,下學期的任務很重,c語言的學習道路才剛...
C語言學習小結
這學期學了c語言,對c語言有了乙個簡單的了解與初步的認識。首先從程式結構的使用與學習開始學起,到後來陣列 函式的初步了解,能夠開始解決一些簡單的c語言問題,但是要想深入解決一些難題,還要等到下學期學習演算法及函式 指標的深入才能做到得心應手。這學期只是認識階段,下學期的任務很重,c語言的學習道路才剛...
C語言學習小結1
1.strcpy和strcat的區別是什麼?解答 strcpy是將src內容直接給des的位址,屬於覆蓋內容,並且它不僅複製字串內容之外,還會複製字串的結束符 strcat則是將src內容銜接在des之後,佔據了 n 附註 strcpy和memcpy區別 1 複製的內容不同。strcpy只能複製字串...