一:格式輸出函數(shù)printf()
成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供佳縣網(wǎng)站建設(shè)、佳縣做網(wǎng)站、佳縣網(wǎng)站設(shè)計(jì)、佳縣網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、佳縣企業(yè)網(wǎng)站模板建站服務(wù),十年佳縣做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
1、調(diào)用形式一般為:printf("格式化控制字符串",輸出表列);
2、格式化控制字符串用于指定輸出格式,它有三種形式:
1、格式說明符:規(guī)定了相應(yīng)輸出表列內(nèi)容的輸出格式,以%打頭,如%d、%o等
2、轉(zhuǎn)義字符:用來輸出轉(zhuǎn)義字符所代表的控制代碼或者特殊字符,比如常用的‘\n'、‘\t'
3、普通字符:需要原樣輸出的字符。
3、輸出表列為若干需要輸出的數(shù)據(jù)項(xiàng),它與格式說明符在數(shù)量和類型上一一對應(yīng);
4、格式字符m指定輸出數(shù)據(jù)所占寬度,n對實(shí)數(shù)表示輸出n位小數(shù),對字符串表示截取的字符個(gè)數(shù),+表示右對齊,通常省略。
—表示左對齊,l用于長整型數(shù)據(jù),可加在d、o、x、u前,更多格式說明符及其組合形式如下所示:
格式字符
數(shù)據(jù)對象
輸出形式
數(shù)據(jù)輸出方法
%(+)-md
int
unsigned
int
short
unsigned
short
char
十進(jìn)制整數(shù)
1、無m按實(shí)際位數(shù)輸出
2、有m輸出m位;超過m位,按實(shí)際位數(shù)輸出,不足補(bǔ)空格
3、有+(默認(rèn)為+)右對齊(左補(bǔ)空格)
4、有-左對齊(右補(bǔ)空格)
%(+)-mo
八進(jìn)制整數(shù)
%(+)-mx
十六進(jìn)制整數(shù)
%(+)-mu
無符號整數(shù)
%(+)-mld
long
unsigned
long
十進(jìn)制整數(shù)
%(+)-mlo
八進(jìn)制整數(shù)
%(+)-mlx
十六進(jìn)制整數(shù)
%(+)-mlu
無符號整數(shù)
%(+)-m.nf
float
double
十進(jìn)制小數(shù)
%(+)-m.ne
十進(jìn)制指數(shù)
%(+)-g
自動選用%f和%e中較短的輸出寬度輸出單、雙精度浮點(diǎn)數(shù)
%(+)-mc
char
int
short
單個(gè)字符
1、無m輸出單個(gè)字符
2、有m輸出m位,補(bǔ)空格
3、有+(默認(rèn)為+)右對齊(左補(bǔ)空格)
4、有-左對齊(右補(bǔ)空格)
%(+)-m.ns
字符串
一串字符
1.無m、n按實(shí)際字符串輸出全部字符
2、有m、n僅輸出前n個(gè)字符,補(bǔ)空格
3.有+(默認(rèn)為+)右對齊(左補(bǔ)空格)
4、有-左對齊(右補(bǔ)空格)
二:格式輸入函數(shù)scanf()
1、
調(diào)用格式一般為:scanf("格式化控制字符串",地址表列);
2、格式化控制字符串和printf()函數(shù)含義相似,所不同的是它是對輸入格式進(jìn)行控制;
3、地址表列是有若干等待輸入的數(shù)據(jù)所對應(yīng)的內(nèi)存單元地址組成,由逗號隔開,一般形式為a,a為變量;
4、地址表列在數(shù)量和類型上和格式化控制字符串中的格式說明符一一對應(yīng);
5、格式字符h表示輸入短型數(shù)據(jù),可用在d、o、x前面,m指定輸入數(shù)據(jù)所占寬度,
*表示對應(yīng)的數(shù)據(jù)項(xiàng)讀入后不賦給相應(yīng)的變量,更多格式說明符及其組合如下
格式字符
數(shù)據(jù)對象
輸入形式
數(shù)據(jù)輸入方法
%md
int
short
unsigned
int
unsigned
short
十進(jìn)制整數(shù)
1、無m按實(shí)際位數(shù)輸入
2、有m輸入m位,不足m則跟回車鍵
%mo
八進(jìn)制整數(shù)
%mx
十六進(jìn)制整數(shù)
%mld
long
unsigned
long
十進(jìn)制整數(shù)
%mlo
八進(jìn)制整數(shù)
%mlx
十六進(jìn)制整數(shù)
%mlf
float
double
十進(jìn)制整數(shù)
%mle
%mc
char
單個(gè)字符
1、無m取單個(gè)字符
2、有m輸入m位,僅取第一個(gè)字符
%ms
字符串
一串字符
1、無m取回車或空格前若干字符
2、有m僅取前m字符
k=k0xff?0x00ff:k8;其實(shí)就是
if(k0xff) {
k=0x00ff;
}else {
k=k8;
}的簡寫。
其實(shí)0xff和0x00ff是一樣的,都表示同一個(gè)十六進(jìn)制的值。
書上這么寫,沒有錯(cuò);至于為什么,就不好說了。
可能是讓你多學(xué)點(diǎn)知識,也可能是現(xiàn)在很多書其實(shí)在編寫時(shí)并不是很認(rèn)真的。畢竟盡信書不如無書!
后面的k8是把0xff的值右移8位,達(dá)到計(jì)算的目的(具體什么目的要看具體內(nèi)容)
c語言是函數(shù)式語言,所以函數(shù)很重要,舉個(gè)例子 #includestdio.h int abc(int a ,int b) /* abc 前的 int 表示這個(gè)函數(shù)的返回值是整數(shù),abc 是函數(shù)名稱,括號里的是定義了兩個(gè)參數(shù)它們都是整數(shù)*/ { int a=123; printf("%d",a); } 這個(gè)是我們自己寫的函數(shù),還有現(xiàn)成的c庫函數(shù),直接調(diào)用就行,限于篇幅,其實(shí)你仔細(xì)的摳書,書上都有,我就是看書學(xué)會的
scanf函數(shù)是c語言中輸入函數(shù)的一種,將用戶從鍵盤輸入的文本轉(zhuǎn)換為對應(yīng)的值存儲起來,下面請看詳細(xì)的教程。
1、首先在主函數(shù)中定義一個(gè)變量age,類型為int類型。
2、接著用printf函數(shù)給出相應(yīng)的提示—“please?enter?your?age”。
3、使用scanf函數(shù),將用戶輸入的內(nèi)容存儲到age這個(gè)變量,注意在變量要加上,如果是字符數(shù)組則不用加。
4、這時(shí)將這個(gè)變量的值打印出來,也就是用戶輸入的內(nèi)容打印出來。
5、最后右鍵單擊,在彈出的菜單中點(diǎn)擊“run code”。查看運(yùn)行結(jié)果,就完成了。
scanf 函數(shù)最主要的用法是:
scanf("輸入控制符", 輸入?yún)?shù));
功能:將從鍵盤輸入的字符轉(zhuǎn)化為“輸入控制符”所規(guī)定格式的數(shù)據(jù),然后存入以輸入?yún)?shù)的值為地址的變量中。
用scanf()函數(shù)以%s格式讀入的數(shù)據(jù)不能含有空白符時(shí),所有空白符都被當(dāng)做數(shù)據(jù)結(jié)束的標(biāo)志。所以題中函數(shù)輸出的值只有空格前面的部分。
如果想要輸出包括空格在內(nèi)的所有數(shù)據(jù),可以使用gets()函數(shù)讀入數(shù)據(jù)。gets()函數(shù)的功能是讀取字符串,并存放在指定的字符數(shù)組中,遇到換行符或文件結(jié)束標(biāo)志時(shí)結(jié)束讀入。換行符不作為讀取串的內(nèi)容,讀取的換行符被轉(zhuǎn)換為字符串結(jié)束標(biāo)志'\0'。
擴(kuò)展資料:
使用scanf()函數(shù)需要注意的問題:
1.對于字符串?dāng)?shù)組或字符串指針變量,由于數(shù)組名可以轉(zhuǎn)換為數(shù)組和指針變量名本身就是地址,因此使用scanf()函數(shù)時(shí),不需要在它們前面加上""操作符。
2.可以在格式化字符串中的"%"各格式化規(guī)定符之間加入一個(gè)整數(shù),表示任何讀操作中的最大位數(shù)。
3.scanf函數(shù)中沒有類似printf的精度控制。
如:scanf("%5.2f",a); 是非法的。不能企圖用此語句輸入小數(shù)為2位的實(shí)數(shù)。
4.scanf中要求給出變量地址,如給出變量名則會出錯(cuò)
如:scanf("%d",a);是非法的,應(yīng)改為scanf("%d",a);才是合法的。
5.在輸入多個(gè)數(shù)值數(shù)據(jù)時(shí),若格式控制串中沒有非格式字符作輸入數(shù)據(jù)之間的間隔,則可用空格,TAB或回車作間隔。
C編譯在碰到空格,TAB,回車或非法數(shù)據(jù)(如對“%d”輸入“12A”時(shí),A即為非法數(shù)據(jù))時(shí)即認(rèn)為該數(shù)據(jù)結(jié)束。
6.在輸入字符數(shù)據(jù)(%c)時(shí),若格式控制串中無非格式字符,則認(rèn)為所有輸入的字符均為有效字符。
參考資料:
百度百科-scanf()函數(shù)
百度百科-gets()函數(shù)
當(dāng)前名稱:c語言輸入函數(shù)語法 C語言輸入函數(shù)
轉(zhuǎn)載來源:http://muchs.cn/article28/hgiscp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、靜態(tài)網(wǎng)站、關(guān)鍵詞優(yōu)化、品牌網(wǎng)站建設(shè)、網(wǎng)站制作、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)