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

C語言中關(guān)于scanf函數(shù)的一些問題詳解

 更新時(shí)間:2022年01月07日 15:11:06   作者:風(fēng)雪宜哉  
這篇文章主要為大家介紹了C語言中關(guān)于scanf函數(shù)的一些問題,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

在學(xué)習(xí)創(chuàng)建二叉樹時(shí)遇到了scanf的一些問題,在此記錄下來

創(chuàng)建根節(jié)點(diǎn)A后理想情況是輸入A的左子樹,若不為空繼續(xù)創(chuàng)建左子樹,但輸入A后發(fā)現(xiàn)重復(fù)創(chuàng)建了一個(gè)左子樹,測試后發(fā)現(xiàn)輸入A換行后scanf函數(shù)接收了換行符(ASCII碼10)

若想按次序創(chuàng)建各個(gè)節(jié)點(diǎn)則需要使用getchar()吸收換行符

 不接收換行符也可以輸入一個(gè)完整的二叉樹序列,也可以成功創(chuàng)建。

void CreateBiTree(BiTree &T)
{
    char ch, temp;
    scanf("%c", &ch);
    temp = getchar(); //換行輸入則需要吸收換行
    if (ch == '#')
    {
        T = NULL;
        return;
    }
    else
    {
        T = (Tree *)malloc(sizeof(Tree));
        T->data = ch;
        printf("請輸入%c的左子樹:", ch);
        CreateBiTree(T->lchild);
        printf("請輸入%c的右子樹:", ch);
        CreateBiTree(T->rchild);
    }
}

 測試后發(fā)現(xiàn)若有多個(gè)scanf()例如

輸入AB換行,多余的scanf會(huì)接收換行符。

若是Int類型換行不被接收,因?yàn)閾Q行符可以作為字符被接收,

在多個(gè)scanf的情況下可以一行輸入多個(gè)數(shù)據(jù),會(huì)依次接收這些數(shù)據(jù),

 第一行輸入1,2,兩個(gè)scanf接收了1,2;

 總結(jié)

Scanf傳遞字符會(huì)接收換行符,避免則須在換行時(shí)吸收多余傳遞的換行符,(getchar傳遞字符同理),若有多個(gè)scanf(如循環(huán),嵌套)允許一次輸入多個(gè)數(shù)據(jù),scanf依次接收它們。

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • C++實(shí)現(xiàn)map和set封裝詳解

    C++實(shí)現(xiàn)map和set封裝詳解

    歡迎閱讀本指南,將帶您深入了解C++中map和set的實(shí)現(xiàn)細(xì)節(jié),本文將重點(diǎn)介紹如何使用C++標(biāo)準(zhǔn)庫中的容器來優(yōu)化代碼,同時(shí)提供實(shí)用的示例和技巧,無論您是初學(xué)者還是資深開發(fā)者,本指南都將成為您掌握C++中map和set封裝的有力助手,需要的朋友可以參考下
    2024-03-03
  • C++執(zhí)行shell命令的多種實(shí)現(xiàn)方法

    C++執(zhí)行shell命令的多種實(shí)現(xiàn)方法

    在linux系統(tǒng)下,用C++程序執(zhí)行shell命令有多種方式,主要介紹了3中方法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2021-11-11
  • c++ 內(nèi)聯(lián)函數(shù)和普通函數(shù)的區(qū)別

    c++ 內(nèi)聯(lián)函數(shù)和普通函數(shù)的區(qū)別

    內(nèi)聯(lián)函數(shù)是c++為了提高程序的運(yùn)行速度做的改進(jìn),那么內(nèi)聯(lián)函數(shù)和普通函數(shù)的區(qū)別是什么,本文就來詳細(xì)的介紹一下,感興趣的朋友可以了解一下
    2021-05-05
  • c++棧內(nèi)存和堆內(nèi)存的基本使用小結(jié)

    c++棧內(nèi)存和堆內(nèi)存的基本使用小結(jié)

    本文主要介紹了c++棧內(nèi)存和堆內(nèi)存的基本使用小結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-07-07
  • 詳解C語言中結(jié)構(gòu)體(struct)的用法

    詳解C語言中結(jié)構(gòu)體(struct)的用法

    這篇文章主要為大家詳細(xì)介紹了C語言中結(jié)構(gòu)體(struct)的用法,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)C語言有一定幫助,需要的可以參考一下
    2022-08-08
  • C++設(shè)計(jì)模式之簡單工廠模式的實(shí)現(xiàn)示例

    C++設(shè)計(jì)模式之簡單工廠模式的實(shí)現(xiàn)示例

    這篇文章主要給大家介紹了關(guān)于C++設(shè)計(jì)模式之簡單工廠模式的相關(guān)資料,簡單工廠模式,主要用于創(chuàng)建對象,添加類時(shí),不會(huì)影響以前的系統(tǒng)代碼,需要的朋友可以參考下
    2021-06-06
  • 淺談使用Rapidxml 庫遇到的問題和分析過程(分享)

    淺談使用Rapidxml 庫遇到的問題和分析過程(分享)

    下面小編就為大家?guī)硪黄獪\談使用Rapidxml 庫遇到的問題和分析過程(分享)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-05-05
  • C++函數(shù)中return語句的使用方法

    C++函數(shù)中return語句的使用方法

    C++中的return語句是函數(shù)中一個(gè)重要的語句,return語句用于結(jié)束當(dāng)前正在執(zhí)行的函數(shù),并將控制權(quán)返回給調(diào)用此函數(shù)的函數(shù),需要的朋友可以了解下
    2012-12-12
  • 詳解C語言中typedef和#define的用法與區(qū)別

    詳解C語言中typedef和#define的用法與區(qū)別

    這篇文章主要給大家介紹了關(guān)于C語言中typedef和#define的的用法、區(qū)別,以及陷阱。文中通過示例進(jìn)行了詳細(xì)講解,感興趣的小伙伴可以了解一下
    2022-07-07
  • Cocos2d-x 3.x入門教程(一):基礎(chǔ)概念

    Cocos2d-x 3.x入門教程(一):基礎(chǔ)概念

    這篇文章主要介紹了Cocos2d-x 3.x入門教程(一):基礎(chǔ)概念,本文講解了Director、Scene、Layer、Sprite等內(nèi)容,需要的朋友可以參考下
    2014-11-11

最新評論

苍梧县| 四子王旗| 龙井市| 东城区| 若羌县| 江城| 宝丰县| 济阳县| 舒城县| 庆安县| 桃园市| 林甸县| 游戏| 保康县| 崇礼县| 改则县| 青州市| 阳江市| 板桥市| 洮南市| 准格尔旗| 锡林浩特市| 兴国县| 肥城市| 乌恰县| 屏南县| 银川市| 那曲县| 马鞍山市| 灵璧县| 八宿县| 托克逊县| 封开县| 汤阴县| 朝阳区| 嘉荫县| 延长县| 祁门县| 宜黄县| 定边县| 南木林县|