資料的輸入和輸出
printf函式輸出
printf(格式控制,輸出表列)
- 格式控制
- 格式宣告
- 由%和格式字元組成
- 格式字元
-
d:輸出有符號的十進位制整數
- 可以在格式宣告中指定輸出資料的域寬,
%5d
表示輸出資料佔5列
- 可以在格式宣告中指定輸出資料的域寬,
-
c:輸出一個字元
char ch =’a’; printf("%c",ch);//最後輸出“a” char ch =’a’; printf("%5c",ch);//指定域寬,最後輸出“ a”(a前面有4個空格) short a=121; printf("%c",a);//最後輸出y(ASCII碼) int a=377; printf("%c",a);//最後輸出y(ASCII碼),把最後一個位元組資訊以字元形式輸出
-
s:輸出字串
-
f:輸出實數,以小數形式輸出
-
基本型:%f
//用%f輸出實數,只得到6位小數 #include<stdio.h> int main() { double a=1.0; printf("%f\n",a/3);//系統處理方法小數一般6位 return 0 }
-
指定資料寬度和小數位數:%m.nf(輸出資料佔m列;n位小數)
-
輸出資料向左對齊:%-m.nf
- 資料長度不超過m時,資料靠左,右補空格
-
-
e:指數形式輸出實數
-
其他:i(和d一樣);o(八進位制整數輸出);x(十六進位制整數輸出);u(unsigned無符號十進位制);g(選擇f或者e輸出,選擇其中長度較短的格式)
-
- 普通字元
- 原樣輸出
- 格式宣告
- 輸出表列
scanf函式輸入
scanf(格式控制,地址表列/變數地址)
-
格式宣告(和printf類似)
-
地址列表
scanf("%f",&a);//&不能沒有
- 使用%c時,空格字元和“跳脫字元”中的字元都作為有效字元輸入(因此輸入要連續,不要有空格)
- 輸入時遇到不屬於數值的字元認為資料結束