標籤:
函數:
常用函數:
printf函數:
介紹:用來輸出資訊語句的函數
格式: printf("格式控制字元串",輸出項列表);
格式字元:
1): %d 輸出十進位整數
%md 設定域寬
m:可以為正負
如果要輸出的位元大於了m,則按照實際域寬進行輸出
否則m大於0 則從左邊補位 ;m小於0 則從右邊補位
%0md
不足的部分用0進行補位
2): %f 輸出一個實數類型的資料
%f 預設顯示6位小數,如果精度要求7位以上則使用 double進行儲存實數類型,精度為15位
%m.nf
m:標示總的位元
n:標示小數點後的位元
%-6.2f 負號表示從右邊補位
3): %c 輸出一個字元
4): %s 輸出一個字串
5): %o 把一個數,以八進位的形式進行輸出
6): %x 把一個數,以十六進位的形式進行輸出
7): %p 輸出一個地址(記憶體位址)
scanf函數 : 阻塞式函數
scanf函數包含在標準"輸入輸出"標頭檔"stdio.h"中,用於接收鍵盤輸入的內容
格式: scanf("格式控制字元串",輸入項地址清單);
輸入項地址清單: 需要接收資料的變數地址,這些輸入項與格式控制字元串在類型和數量上相對應,當有多個輸入項時,各個地址名之間用 "逗號" 分隔,另:輸出格式和變數類型要保持一致(一個變數的地址可以通過地址運算子& 得到)
scanf函數格式控制符:
i 輸入一個有符號或無符號的十進位、八進位、十六進位整數
u 輸入一個無符號十進位整數
f、e/E、g/G 輸入一個小數形式或指數形式的浮點數
注意: %f 這樣是可以的 ,%m.nf 這樣在scanf中是不可以的
scanf注意事項:
1.scanf函數當遇到斷行符號的時候,會結束執行
2.接收單個變數值的時候,在輸入值之前,如果我們輸入了空格、斷行符號、tab,都會被忽略
scanf("%d%d",&a,&b); 要求我們在鍵盤上輸入的時候,輸入兩個整數,並且以空格或者斷行符號隔開
輸入完第一個數以後,如果中間輸入空格、斷行符號、tab都會被忽略
3.%*d 其中 *代表跳過一個整數
4.\n 關於scanf中,盡量不要使用\n,如果不小心使用了,輸入值以後隨便輸入一個內容,那麼需要原樣輸入\n
scanf函數原理:
"已知問題:整形和字元混合輸入"
%d%c%d
運行原理:
1.當使用者輸入內容後,使用者輸入的內容會被存放在scanf的輸入緩衝區中,然後canf函數會根據格式控制的字元的要求,從輸入緩衝區依次取它想要的內容,如果緩衝區中取得內容和我們的格式要求一致,那麼就把值存放到變數中;如果格式不一致,則不修改變數的值
2.如果scanf緩衝區還有內容,那麼scanf不會提示我們輸入內容
遞迴函式/遞迴調用:
C語言的函數