最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語言使用scanf連續(xù)輸入字符串出現(xiàn)的問題

 更新時間:2020年12月28日 11:27:32   作者:Minorko  
這篇文章主要介紹了C語言使用scanf連續(xù)輸入字符串出現(xiàn)的問題,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
#include<stdio.h>
 
int main()
{
	char a,b;
	scanf("%c",&a);
	scanf("%c",&b);
	printf("%c,%c",a,b);
}

一段看上去很簡單的代碼,即使是C語言初學(xué)者也能看懂。

可是在運(yùn)行的時候卻出現(xiàn)了問題:
①輸入a后按下回車

在這里插入圖片描述

②用空格隔開之后再按下回車

在這里插入圖片描述

相信和我一樣的大部分初學(xué)者,看著自己天衣無縫的代碼,百思不得其解。

讓我們先來看看,在百度百科中,對于scanf函數(shù)的解釋

在這里插入圖片描述

在①中,我們只輸入了a和回車。而這時,回車便留在了緩沖區(qū)中,直接被下一個scanf所吸收。在②中,輸入了a、空格、b和回車,在這種情況下,我們輸入的空格則進(jìn)入了緩沖區(qū)中,導(dǎo)致b無法被讀取,導(dǎo)致出現(xiàn)了問題。

解決方法
①在第二個%c前加上空格,來抵消之前輸入的空格/回車

#include<stdio.h>
 
int main()
{
	char a,b;
	scanf("%c",&a);
	scanf(" %c",&b);	//在%c前加上一個空格
	printf("%c,%c",a,b);
}

②在第一個%c后面加上一個*c,忽略下一個讀入的字符

#include<stdio.h>
 
int main()
{
	char a,b;
	scanf("%c*c",&a);
	scanf("%c",&b);
	printf("%c,%c",a,b);
}

③用fflush清空緩沖區(qū)

#include<stdio.h>
 
int main()
{
	char a,b;
	scanf("%c",&a);
	fflush(stdin); 
	scanf("%c",&b);
	printf("%c,%c",a,b);
}

④用getchar吸收字符

#include<stdio.h>
 
int main()
{
	char a,b;
	scanf("%c",&a);
	getchar();
	scanf("%c",&b);
	printf("%c,%c",a,b);
}

除方法①以外,其他三種方法不僅在使用scanf時有效,在使用getchar碰到類似問題的時候也有效,有興趣的讀者可以自行嘗試。

到此這篇關(guān)于C語言使用scanf連續(xù)輸入字符串出現(xiàn)的問題的文章就介紹到這了,更多相關(guān)C語言scanf連續(xù)輸入字符串內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C語言深入講解鏈表的使用

    C語言深入講解鏈表的使用

    當(dāng)我們在寫一段代碼時,如果要頻繁的在一塊區(qū)域進(jìn)行插入或者刪除操作時,會發(fā)現(xiàn)用數(shù)組實現(xiàn)會比較復(fù)雜,這時候我們就要用另一種數(shù)據(jù)結(jié)構(gòu),鏈表來實現(xiàn)
    2022-05-05
  • C/C++編寫推箱子小游戲

    C/C++編寫推箱子小游戲

    這篇文章主要為大家詳細(xì)介紹了C/C++編寫推箱子小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • C/C++中接收return返回來的數(shù)組元素方法示例

    C/C++中接收return返回來的數(shù)組元素方法示例

    return是C++預(yù)定義的語句,它提供了種植函數(shù)執(zhí)行的一種放大,最近學(xué)習(xí)中遇到了相關(guān)return的內(nèi)容,覺著有必要總結(jié)一下,這篇文章主要給大家介紹了關(guān)于C/C++中如何接收return返回來的數(shù)組元素的相關(guān)資料,需要的朋友可以參考下。
    2017-12-12
  • C++標(biāo)準(zhǔn)之(ravalue reference) 右值引用介紹

    C++標(biāo)準(zhǔn)之(ravalue reference) 右值引用介紹

    臨時對象的產(chǎn)生和拷貝所帶來的效率折損,一直是C++所為人詬病的問題,下面簡單地介紹一下Copy Elision、RVO,對此不感興趣的可以直接跳過
    2012-11-11
  • Qt圖片繪圖類之QPixmap/QImage/QPicture詳解

    Qt圖片繪圖類之QPixmap/QImage/QPicture詳解

    這篇文章主要為大家詳細(xì)介紹了Qt圖片繪圖類中QPixmap、QImage和QPicture的使用方法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-03-03
  • C++?move()函數(shù)及priority_queue隊列使用記錄

    C++?move()函數(shù)及priority_queue隊列使用記錄

    move(obj)函數(shù)的功能是把obj當(dāng)做右值處理,可以應(yīng)用在對象的移動上,這篇文章主要介紹了C++?move()函數(shù)及priority_queue隊列使用記錄,需要的朋友可以參考下
    2023-01-01
  • C++ 虛函數(shù)與純虛函數(shù)的使用與區(qū)別

    C++ 虛函數(shù)與純虛函數(shù)的使用與區(qū)別

    本文主要介紹了C++ 虛函數(shù)與純虛函數(shù)的使用與區(qū)別,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • C++ 網(wǎng)絡(luò)編程 總結(jié)

    C++ 網(wǎng)絡(luò)編程 總結(jié)

    這篇文章主要介紹了C++ 網(wǎng)絡(luò)編程的一些詳細(xì)相關(guān)內(nèi)容,有需要的小伙伴可以參考下。
    2015-06-06
  • 在iOS中給視頻添加濾鏡的方法示例

    在iOS中給視頻添加濾鏡的方法示例

    這篇文章主要介紹了在iOS中給視頻添加濾鏡的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • ubuntu系統(tǒng)下C++調(diào)用matlab程序的方法詳解

    ubuntu系統(tǒng)下C++調(diào)用matlab程序的方法詳解

    學(xué)習(xí)c++與matlab混合編程一般是通過c++調(diào)用matlab函數(shù),因為matlab具有強(qiáng)大的數(shù)學(xué)函數(shù)庫,然而vc++具有界面設(shè)計靈活的優(yōu)點(diǎn),下面這篇文章主要給大家介紹了關(guān)于在ubuntu系統(tǒng)下C++調(diào)用matlab程序的方法,需要的朋友可以參考下。
    2017-08-08

最新評論

循化| 嘉荫县| 隆昌县| 星座| 阳城县| 霞浦县| 正蓝旗| 晋中市| 望都县| 玉田县| 游戏| 芒康县| 堆龙德庆县| 叶城县| 图木舒克市| 大名县| 会泽县| 武平县| 湾仔区| 射洪县| 濉溪县| 始兴县| 绍兴县| 永德县| 金乡县| 乌拉特中旗| 拜城县| 新丰县| 海晏县| 茶陵县| 新平| 寿光市| 定日县| 嘉定区| 射洪县| 平定县| 昌乐县| 县级市| 巩义市| 西安市| 景东|