久久婷婷香蕉热狠狠综合,精品无码国产自产拍在线观看蜜,寡妇房东在做爰3,中文字幕日本人妻久久久免费,国产成人精品三上悠亚久久

當前位置:首頁 > 嵌入式培訓 > 嵌入式學習 > 學習筆記 > c語言(yan)中輸(shu)入輸(shu)出(chu)函數(shu)案(an)例解(jie)析

c語言中輸入輸出(chu)函(han)數案例解析 時間:2018-07-25      來源(yuan):未(wei)知

一(yi)、格式的(de)輸入輸出函(han)數(shu)(printf/scanf)

1、printf格式輸出函數

頭文件:#include

功能:以(yi)你(ni)固定號的(de)格式向終端輸出

原型:int printf(const char *format, ...); //...表示可(ke)變參

format:輸出格式(shi)串

形式:%[修飾符]格式控制(zhi)符 (%d、%u、 %c、%s、 %f 、%e、%#x、 %#o、%% )

修飾符

m:可以設置輸出數(shu)據的域寬

­:可(ke)以將系統(tong)默認的(de)右(you)對齊改為(wei)作齊

0:將設置域寬空余的部分用0來(lai)補(bu)

注(zhu)意:­和0不能一起使用

.n:若在浮點類型中表示(shi)設置小數(shu)點后n位輸(shu)出,并且也(ye)進行四舍五(wu)入

若在字符串中表示設置字符串輸出位
 

#include <stdio.h>
int main(int argc, const char *argv[])
{
    int a = 345, c = ‐5;
    printf("%d%d\n", a, a);
    printf("%+d%+d\n", a, a);
    printf("*******************************\n");
    printf("%5d%5d\n", a, a);
    printf("%05d%05d\n", a, a);
    printf("*******************************\n");
    printf("%‐5d%‐5d\n", a, a);
    //左對齊,不允許使用0
    //printf("%0‐5d%0‐5d\n", a, a)是錯的
    printf("%+d\n", c);
    float b = 3.1455926;
    printf("%f\n", b);
    printf("%.2f\n", b);
       return 0;
}

2、scanf 格式輸入函(han)數

頭文件:#include

功(gong)能(neng):按照指定(ding)的格式(shi)從鍵盤(pan)輸入數據,存入地址表(biao)指定(ding)存儲單元(yuan)

中(zhong),并按回車鍵結束

原形:int scanf(const char *format, ...);

參數:format 指定(ding)輸(shu)入(ru)格式(shi),后面跟(gen)要輸(shu)入(ru)的變量(liang)的地址表(biao),為不定(ding)

參,用“...”代表

返回值 :成功返回輸入(ru)的(de)變量(liang)的(de)個數,失敗(bai)返回­1(EOF)

 格(ge)式說明:%[修飾符]格(ge)式字(zi)符( %d、%c、%s、 %f ) ,用于指定

輸出格式

修飾符:

l: 在d,o,x,u前,指(zhi)定輸出精度為long型

在e,f,g前,指定輸(shu)出精度為(wei)double型(xing)

m:指定(ding)輸入數據寬(kuan)度,遇空格或(huo)不可轉換字(zi)符則結束

*:抑制符(fu),指定輸入項讀入后不賦給變(bian)量

地址表:保存輸(shu)入數據(ju)的(de)變(bian)量的(de)地址

垃(la)圾字符的回收:

在輸(shu)入多個字(zi)符(fu)的時候,往(wang)(wang)往(wang)(wang)會產出空格(ge)以及回車這個垃圾字(zi)符(fu),所(suo)以需要處理

scanf("%c%c%c", &a, &b, &c);

方法(fa)1:使用空格(ge)隔開

scanf("%c %c %c", &a, &b, &c);

方(fang)法2:使(shi)用(yong)%*c隔開,但是那次只能回收一個

scanf("%c%*c%c%*c%c", &a, &b, &c);

方法3:使用getchar來回收垃圾字符

scanf("%c", &a);

getchar();

scanf("%c", &b);

getchar();

scanf("%c", &c);

getchar();
 

#include <stdio.h>
int main(int argc, const char *argv[])
{
    //在輸入一個字符串的時候,需要保證字符串的長度足夠大
    char c[32];
    scanf("%s", c);
    printf("c = %s\n", c);
   
    return 0;
}

字符(fu)的輸(shu)入(ru)輸(shu)出(chu)函(han)數(getchar/putchar)

 

#include <stdio.h>
int main(int argc, const char *argv[])
{
#if 0
    //傳一個字符
    putchar('a');
    putchar('\n');
   
    //傳一個字符的ascii
    putchar(97);
    putchar(10);
    //傳一個變量
    char a = 'h', b = 99;
    putchar(a);
    putchar(b);
    putchar(10);
    putchar(10);
    char c;
    c = putchar(a);
    putchar(10);
    printf("c = %d %c\n", c, c);
#endif
    char a, b, c;
    a = getchar();  //輸入字符無參數
    getchar();   //回收空格
 
 
    b = getchar();
    getchar();
    c = getchar();
    putchar(a);
    putchar(10);
    putchar(b);
    putchar(10);
    putchar(c);
    putchar(10);
    return 0;
}

字符串輸入(gets)和輸出(puts)函數
 

#include <stdio.h>
int main(int argc, const char *argv[])
{
#if 0
    //自帶換行功能
    puts("hello world");
    //printf("\n");
    //putchar(10);
    //puts("")
   
    char a[] = "nihao beijing";
    int num;
    num = puts(a);
    printf("num = %d\n", num);
    //puts()能統計字符串的長度包括'\0'(相當于sizeof(a))
#endif
    //在輸入一個字符串的時候,必須保證字符串的長度足夠大,否則會內存溢出
    char c[32], *d;
    d = gets(c);
    printf("c = %s\n", c);
    printf("d = %s\n", d);
    return 0;
}

上一篇:沒有了

下一篇:變量存儲類型 動態內存分配詳解

熱點文章(zhang)推薦(jian)
華清(qing)學員就業(ye)榜單(dan)
高薪學(xue)員(yuan)經驗(yan)分享
熱點新(xin)聞推薦
前臺專線:010-82525158 企(qi)業培訓洽(qia)談專線:010-82525379 院校合作洽(qia)談專線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權所有 ,,京公海網安備11010802025203號

回到頂部