字元輸入函式: getchar 字元輸出函式:putchar格式輸入函式: scanf 格式輸出函式: printf
字串輸入函式:gets 字數串輸出函式:puts
字元輸出函式putchar(c)
#includevoidmain()
字元輸入函式getchar()
#includevoidmain()
%d:以帶符號的十進位制形式輸出整數%o:以八進位制無符號形式輸出整數
%x:以十六進製制無符號形式輸出整數
%u:以無符號十進位制形式輸出整數
%c:以字元形式輸出,只輸出乙個字元
%s:輸出字串
%f:以小數形式輸出單,雙精度數,隱含輸出六位小數
%e:以指數形式輸出實數
%g:選用%f或%e格式中輸出寬度較短的一種格式,不輸出無意義的0
1.2.1、d格式
1.%d: 按十進位制整型資料的實際長度輸出。2.%md: m為指定的輸出欄位的寬度。如果資料的位數小於m,則左端補以空格,若大於m,則按實際位數輸出。
例: printf(″%4d,%4d″,a,b);
若a=123,d=12345
,則輸出結果為
123,12345
3.%ld:輸出長整型資料。
例: long a=
135790;/*
定義a為長整型變數
*/printf(″%ld″,a);
1.2.2、o格式
1.輸出的數值不帶符號,符號位也一起作為八進位制數的一部分輸出。例:int a=-1
; printf(
"%d,%o
",a,a);
-1在記憶體單元中的存放形式(以補碼形式存放)如下:
1111111111111111
輸出為:
-1,177777
2.不會輸出帶負號的八進位制整數。對長整數(long型)可以
3.用「%lo」格式輸出。還可以指定字段寬度,
例:printf(
"%8o
",a);
輸出為:
177777。 (數字前有2個空格)
1.2.3、x格式
以十六進製制數形式輸出整數。同樣不會出現負的十六進製制數。例:int a=-1;
printf(″%x,%o,%d″,a,a,a);
輸出結果為:
ffff,
177777,-1
可以用「%lx」輸出長整型數,也可以指定輸出欄位的寬度
例: 「%12x」
1.2.4、u格式
用來輸出unsigned型資料.乙個有符號整數(int型)也可以用%u格式輸出
乙個unsigned型資料也可以用%d格式輸出
unsigned型資料也可用%o或%x格式輸出
1.2.5、c格式
c格式符,用來輸出乙個字元,也可指定寬度用空格填充
1.2.6、s格式
1.%s,輸出字串例如: printf(″%s″,″china″)
輸出字串「china」(不包括雙引號)。
2.%ms,輸出的字串佔m列,若串長大於m,則全部輸出,若串長小於m,則左補空格。
3.%-ms,若串長小於m,字串向左靠,右補空格。
4.%m.ns,輸出佔m列,只取字串中左端n個字元,輸出在m列的右側,左補空格。
5.%-m.ns,n個字元輸出在m列的左側,右補空格,若n〉m,m自動取n值。
1.2.7、f格式
1.%f。不指定字段寬度,由系統自動指定字段寬度,使整數部分全部輸出,並輸出6位小數。應當注意,在輸出的數字中並非全部數字都是有效數字。單精度實數的有效位數一般為7位2.%m.nf。指定輸出的資料共佔m列,其中有n位小數。如果數值長度小於m,則左端補空格
3.%-m.nf與%m.nf基本相同,只是使輸出的數值向左端靠,右端補空格
1.2.8、e格式
1.%e。不指定輸出資料所佔的寬度和數字部分的小數字數.例:printf(″%e″,
123.456
); 輸出:
1.234560 e+002
所輸出的實數共佔13列寬度。(注:不同系統的規定略有不同)
2.%m.ne和%-m.ne。 m、n和「-」字元的含義與前相同
此處n指擬輸出的資料的小數部分(又稱尾數)的小數字數
若f=123.456
,則: printf(
"%e %10e %10.2e %.2e %-10.2e
",f,f,f,f,f);
輸出如下:
1.234560e+002
1.234560e+002
1.23e+002
1.23e+002
1.23e+002
13列 13列 10列 9列 10列
1.2.9、g格式
根據數值的大小,自動選f格式或e格式(選擇輸出時佔寬度較小的一種),且不輸出無意義的零。例:若f=
123.468
,則 printf(″%f %e %g″,f,f,f);
輸出如下:
123.468000
1.234680e+002
123.468
10列 13列 10列
按照變數在記憶體的位址將變數值存進去
#includevoidmain()
說明:
1.對unsigned型變數所需要的資料,可以用%u,%d或%o,%x格式輸入2.可以指定輸入資料所佔的列數,系統自動按它擷取所需資料
3.如果在%後有乙個「*」附加說明符,表示跳過它指定的列數
4.輸入資料時不能規定精度
注意:
(1)scanf函式中的「格式控制」後面應當是變數位址,而不應是變數名(2
) 如果在「格式控制」字串中除了格式說明以外還有其他字元,則在輸入資料時在對應位置應輸入與這些字元相同的字元(3
) 在用「%c」格式輸入字元時,空格字元和「轉義字元」都作為有效字元輸入 (4
) 在輸入資料時,遇以下情況時認為該資料結束
① 遇空格,或按「回車」或「跳格」(tab)鍵;
② 按指定的寬度結束,如「%3d」,只取3列;
③ 遇非法輸入
字元陣列的輸入輸出可以有兩種方法:
1. 逐個字元輸入輸出。用格式符「%c」輸入或輸出乙個字元。2. 將整個字串一次輸入或輸出。用「%s」格式符,意思是對字串的輸入輸出
用puts函式輸出的字串中可以包含轉義字元
char str[]=;puts(str);
gets(字元陣列) 其作用是從終端輸入乙個字串到字元陣列,並且得到乙個函式值。該函式值是字元陣列的起始位址。
gets(str) 等待鍵盤錄入:
注意:scanf不能接受空格、回車、製表符tab,而gets可以接受。相同點:字串接受結束後自動新增『\0』
C語言學習 1 3輸入輸出
常使用的鍵盤輸入函式scanf,輸出函式printf,字元輸入函式getchar,字元輸出函式putchar 函式定義 int putchar int ch ch型別可以是int也可以char 例 putchar a 字元輸出 putchar 101 轉移字元輸出 從終端 輸入裝置 輸入乙個字元 函...
C語言學習 輸入輸出與變數
輸入scanf 特殊字元變數 輸出輸入都必須使用佔位符 a,a 讀入乙個浮點值 僅c99有效 c 讀入乙個字元 d 讀入十進位制整數 i 讀入十進位制,八進位制,十六進製制整數 o 讀入八進位制整數 x,x 讀入十六進製制整數 s 讀入乙個字串,遇空格 製表符或換行符結束。f,f,e,e,g,g 用...
C語言學習筆記 檔案輸入輸出
用於存放檔案資訊的結構體型別為 file 由系統定義 包含在內。檔案類別 1 程式檔案 內容為程式 2 資料檔案 內容為資料,供程式執行使用。二進位制檔案 資料以二進位制形式儲存 又稱映像檔案 執行更快 資料的儲存 1 字元一律以asc 的形式儲存 2 數值型兩種方式都可以 例如 表示10000 1...