C語言(yan)中(zhong)數(shu)據的輸入輸出(chu)詳解
時間(jian):2018-08-30 來源:未(wei)知(zhi)
sizeof(數據類(lei)型或變量名);
1、字符的輸入與輸出
getchar:函數原型 :int getchar(void);功能:從(cong)終端獲(huo)取(qu)字符
返回值:
成功:返(fan)回(hui)的是讀到的字符的ASCII碼值(zhi)失敗:返(fan)回(hui)EOF(-1)
putchar:函數原型 int putchar(int c);功能(neng):向終端輸出字符
返回值:
成(cheng)功:輸出字(zi)符的ASCII碼值失敗:返回EOF
2、字符串(chuan)的(de)輸入與輸出
gets:函數原(yuan)型:char *gets(char *s);
功(gong)能:從鍵(jian)盤(pan)輸入一以回車結束的字(zi)(zi)符(fu)(fu)串(chuan)放入字(zi)(zi)符(fu)(fu)數組中,并且自(zi)動(dong)加‘\0’;其中:s為字(zi)(zi)符(fu)(fu)數組,存儲輸入的字(zi)(zi)符(fu)(fu)串(chuan)
返回值:
成(cheng)功:返回字符(fu)數組的起始地址; 失(shi)敗:返回NULL;
注:gets輸入(ru)時(shi),要(yao)注意(yi)不(bu)要(yao)越(yue)界,只(zhi)能輸入(ru)n-1個; puts: int puts(const char *s);
功能(neng):向(xiang)終端輸出字符串(chuan)s 參數(shu):s為需(xu)要輸出的字符串(chuan)返回值:
成功:返(fan)回輸入的(de)字符的(de)個(ge)數(shu),包括‘\0’失敗(bai):返(fan)回EOF
3、標準(zhun)格(ge)式化輸(shu)入與輸(shu)出printf:
函數原型(xing):int printf(“格(ge)式控(kong)制串”,輸出表);功(gong)能:向(xiang)終(zhong)端打印輸出
輸出表:輸出多個(ge)內容時,用逗號隔開,輸出表可以變量,也(ye)可以是常量 返回值:
成(cheng)功:返(fan)回輸(shu)出的字節數(按終(zhong)端統計) 失(shi)敗:返(fan)回EOF
%d 有符號(hao)的十進制整(zheng)型
%hd 有符號(hao)十進(jin)制的短整型數(shu)
%ld long
%lld------long long
%u 無符號十進制整數
%o 八(ba)進制的無(wu)符號整(zheng)型
%x,%X 十(shi)六進制的無符號整(zheng)型
# 自(zi)動在八進(jin)(jin)制(zhi)數前面加(jia)0,十(shi)六進(jin)(jin)制(zhi)前面加(jia)0x
%c 字符型
%s 打印字符(fu)串,遇到‘\0’就結束
%f float
%lf double
%e 指數(shu)(shu)形式的浮點數(shu)(shu)
%g %f和%e較短的一種(zhong)
m 輸(shu)(shu)出數據(ju)的域寬(kuan),如果(guo)數據(ju)的寬(kuan)度大(da)于m時,數據(ju)按原樣輸(shu)(shu)出,如果(guo)小于m
時,數據(ju)右對(dui)齊(qi),左補空格
- ------左對齊,右補空格(ge)(默認右對齊)
.n 浮點型小(xiao)數(shu)位保(bao)留n位,第n+1位四舍五(wu)入
打印字符(fu)串時,n表(biao)示打印多少個字符(fu)scanf:
函數(shu)原型:int scanf(“格式(shi)控制串(chuan)”,地址表);
功能:按指定(ding)格式從(cong)鍵(jian)盤讀入數據,存入地(di)址表指定(ding)的存儲單元中,并按回車鍵(jian) 結束
返回值:
成功:返回輸入的變量的個數 失敗:返回EOF
輸(shu)(shu)入數據時,如(ru)果需要輸(shu)(shu)入多個變量,一般用(yong)空格、回車或tab鍵作為分隔符;輸(shu)(shu)入字符數據時,容易產生(sheng)垃(la)圾字符,如(ru)‘ ’,‘\n’,(因為用(yong)%c時,空格和回車作為有效(xiao)字符輸(shu)(shu)入)
解決辦法:
1、getchar();
2、%*c *表示不把輸入的(de)值(zhi)賦(fu)給變量

