C語言中scanf的用法舉例
scanf的用法
scanf從緩沖區(qū)讀取數(shù)據(jù),每次讀取一個數(shù)據(jù),如果緩沖區(qū)中無內(nèi)容,則出現(xiàn)堵塞,在運行窗口要求用戶輸入;
scanf("%d%d", &a, &b);
如果a和b都被成功讀入,那么scanf的返回值就是2
如果只有a被成功讀入,返回值為1
如果a和b都未被成功讀入,返回值為0
如果遇到錯誤或遇到end of file,返回值為EOF。
且返回值為int型
一,scanf可以通過鍵盤輸入數(shù)據(jù)到變量中,它的格式有以下兩種
1,scanf(“輸入控制符”,輸入?yún)?shù));
%d 讀入十進(jìn)制整數(shù)
%o 讀入八進(jìn)制整數(shù)
%x,%X 讀入十六進(jìn)制整數(shù)
%c 讀入一個字符
%s 讀入一個字符串
%f,%F,%e,%E,%g,%G 用來輸入實數(shù),可以用小數(shù)形式或指數(shù)形式輸入。
%u 讀入一個無符號十進(jìn)制整數(shù)
h用于d,o,x前,指定為short
l用于d,o,x前,指定為long,用e,f 前指定為double
2,scanf(“非輸入控制符 輸入控制符”,輸入?yún)?shù));
非控制符一定要原樣輸入,還有注意如果非輸入控制符中有字符
的話,在輸入的時候不要忘記切換到英文輸入法來輸入英文字符
在賦值的時候如果用中文輸入法輸入了‘ ,’,結(jié)果就成了這樣
二,通過scanf進(jìn)行賦值
1,指定輸入數(shù)據(jù)所占列寬scanf(“%3d%3d”,&a,&b)
輸入:123456系統(tǒng)自動將123賦給a,456賦給b
2,%后面加‘*’用來抑制輸入。scanf(“%2d%*3d%2d”,&a,&b)
輸入:1234567。將12賦給a,67賦給b。個數(shù)據(jù)”345”被跳過不賦給任何變量。
3, 輸入數(shù)據(jù)流分隔。根據(jù)格式字符的含義從輸入流中取得數(shù)據(jù),當(dāng)輸入流中數(shù)
據(jù)類型與格式字符要求不符時,就認(rèn)為這一項結(jié)束。
如:scanf(“%d%c,%d”,&a,&b,&c);
如果輸入如下信息:12r12則scanf函數(shù)在接收數(shù)據(jù)時發(fā)現(xiàn)”r”類型不匹配,于是把
12賦值給a,把”r”賦給變量b,最后把12賦給c。
4,隱示分隔符??崭瘛⒅票矸?rsquo;\t’,換行符/回車鍵’\n’都是C語言認(rèn)定的數(shù)據(jù)分隔
符。
注意
1,scanf函數(shù)不能控制精度 如 scanf(“3.2%”,&a);
這樣是錯誤的
2,在使用scanf函數(shù)后,緩沖區(qū)可能會存有’\n’,這樣如果使用getchar/gest時會直接把’\n’進(jìn)行賦值,這時可以使用
1, 使用 getchar();來吃掉這個換行鍵
2,使用 fflush(stdin); 來清空緩沖區(qū);
到此這篇關(guān)于C++中scanf的用法舉例的文章就介紹到這了,更多相關(guān)scanf的用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
在vs2010中,輸出當(dāng)前文件路徑與源文件當(dāng)前行號的解決方法
本篇文章是對在vs2010中,輸出當(dāng)前文件路徑與源文件當(dāng)前行號的解決方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05C語言數(shù)學(xué)公式來實現(xiàn)土味表白
大家好,本篇文章主要講的是C語言數(shù)學(xué)公式來實現(xiàn)土味表白,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽2021-12-12C/C++?Qt數(shù)據(jù)庫與SqlTableModel組件應(yīng)用教程
SqlTableModel?組件可以將數(shù)據(jù)庫中的特定字段動態(tài)顯示在TableView表格組件中,這篇文章將主要介紹SqlTableModel組件一些常用的操作,需要的朋友可以參考一下2021-12-12C語言進(jìn)階數(shù)據(jù)的存儲機(jī)制完整版
這篇文章主要為大家完整的介紹了C語言進(jìn)階數(shù)據(jù)的存儲機(jī)制,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2022-02-02C++連接mysql的方法(直接調(diào)用C-API)
首先安裝mysql,點完全安裝,才能在在安裝目錄include找到相應(yīng)的頭文件,注意,是完全安裝,需要的朋友可以參考下2017-06-06