1. 輸出(output)
將資料輸出到螢幕(或檔案、印表機等設備)
2. 輸入(input)
將資料從鍵盤輸入到電腦(或從檔案、滑鼠等設備輸入)
3. 標準輸出入(從鍵盤輸入,並從螢幕輸出)
3.1. 標準輸出
3.1.1. syntax:
printf(格式字串[,參數])
格式字串內可以包括固定的字元或轉換規格符號
例:
char name[20]="Avatar"; int age=18; //%s 對應 name , %d 對應 ageprintf("Hi %s,you are %d years old.\n",name,age);
|
3.1.2.常用的轉換規格符號如下
%d 整數(int) 如 1,3,101
%f 小數(float) 如 3.14
%e,%g 小數,以科學記號表示(float) 如 1.2e-2
%c 字元(char) 如 'a','$','5','\n'
%s 字串(string) 如 "happy","All4you"
3.1.3. eg:
float temp; char grade='A',name[5]="Joyce"; printf("Hello,everyone!"); printf("9*8*7*6=%d",9*8*7*6); printf("Today's temperature is %f",temp); //%s 對應 name,%c 對應 gradeprintf("%s is a smart boy,he got %c in all subjects. ",name,grade);
|
3.2. 標準輸入
3.2.1. syntax:
scanf(格式字串[,位址])
格式的用法同printf
位址為輸入資料儲存的地方,通常表示為 &變數名稱(指標及陣列除外)
3.2.2. eg:
int money,math_sco,eng_sco,chi_sco; char name[20],sex; scanf("%d",&money); scanf("%d%d%d",&math_sco,&eng_sco,&chi_sco); scanf("%c",&sex); scanf("%s",name); //注意!因為name為陣列,故不加&
|
4. 修飾符號
在 %與轉換規格字元之間,可使用修飾字元來修改原本的轉換規格符號。
較有用的修飾符號請見下表:
修飾符號 | 代表意義 | 例 |
數字(digit(s)) | 設定最少使用長度 | %5d |
點(.digit(s)) | 設定精準度(若用在%e、%e則為小數點位數),若位數不足則會補0。 | %.2f |
- | 輸出資料靠左對齊 | %-10s |
+ | 輸出有號數時,若為正數則加一個正數,若為負數則加一負號。 | %+5.2f |
0 | 若用於數字類型,實際數值前的位置會補0,而非空白字元。 | %010d |
5. 其他輸出入函式
5.1. 字元輸出入
putc()、getc()、putchar()、getchar()
5.2. 字串輸出入
puts()、gets()
5.3. 檔案輸出入:
fopen(),fclose(),fprintf(),fscanf(),fputs),fgets()
6. 試試看
6.1 請設計一程式,可輸入個人基本資料,並將其輸出。
個人基本資料應含:姓名(10)、出生年(10)、性別(10)、電話(10)及地址(20)
(括號後為欄寬,並需靠左對齊)
例:
Name | Year | Sex | Phone | Address |
Avatar | 1990 | M | 3946000 | Taoyuan |
6.2 請設計一程式,可輸入書籍基本資料,並將其輸出。
個人基本資料應含:書名(10)、作者(10)、出版社(10)、定價(10)及ISBN(20)
(括號後為欄寬,並需靠左對齊)
例:
Title | Author | Publisher | Price | Pages | ISBN |
Republic | Plato | Oxford | 100 | 500 | 123-456-789-0 |
6.3 請按下列格式輸入資料並利用修飾字元控制輸出資料的格式
6.3.1 輸入資料
a.15 b.2.54 c.0.000123 d.6E-3
6.3.2 輸出資料
a1.000015 (最小長度為6,靠右對齊)
a2.000015 (最小長度6,前面不足部份補0)
b.+002.540 (顯示正負號,整數部份最少長度3,小數部份最小長度3,不足補0)
c.1.23E-004 (使用科學記號表示)
d.0.006 (表示到小數點3位)