• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • C語言數據的輸入與輸出

    發表于:2007-07-14來源:作者:點擊數: 標簽:
    C語言數據的輸入與輸出: 在程序的運行過程中,往往需要由用戶輸入一些數據,而程序運算所得到的計算結果等又需要輸出給用戶,由此實現人與計算機之間的交互,所以在程序設計中,輸入輸出語句是一類必不可少的重要語句,在C語言中,沒有專門的輸入輸出語句,
    C語言數據的輸入與輸出:


    在程序的運行過程中,往往需要由用戶輸入一些數據,而程序運算所得到的計算結果等又需要輸出給用戶,由此實現人與計算機之間的交互,所以在程序設計中,輸入輸出語句是一類必不可少的重要語句,在C語言中,沒有專門的輸入輸出語句,所有的輸入輸出操作都是
    通過對標準I/O庫函數的調用實現。最常用的輸入輸出函數有scanf()、printf()、getchar()和putchar(),以下分別介紹。
    3.2.1scanf()函數
    格式化輸入函數scanf()的功能是從鍵盤上輸入數據,該輸入數據按指定的輸入格式被賦給相應的輸入項。函數一般格式為:
    scanf("控制字符串",輸入項列表);
    其中控制字符串規定數據的輸入格式,必須用雙引號括起,其內容是由格式說明和普通字符兩部分組成。輸入項列表則由一個或多個變量地址組成,當變量地址有多個時,各變量地址之間用逗號“,”分隔。
    scanf()中各變量要加地址操作符,就是變量名前加“&”,這是初學者容易忽略的一個問題。應注意輸入類型與變量類型一致。
    下面探討控制字符串的兩個組成部分:格式說明和普通字符。
    1.格式說明
    格式說明規定了輸入項中的變量以何種類型的數據格式被輸入,形式是:
    % [ <修飾符> ] <格式字>
    各個格式字符及其意義見表3 - 1。



    3.2.2printf()函數
    與格式化輸入函數scanf()相對應的是格式化輸出函數printf(),其功能為按控制字符串規定的格式,向缺省輸出設備(一般為顯示器)輸出在輸出項列表中列出的各輸出項,其基本格式為:
    printf(“控制字符串”,輸出項列表)
    輸出項可以是常量、變量、表達式,其類型與個數必須與控制字符串中格式字符的類型、
    個數一致、當有多個輸出項時,各項之間用逗號分隔。
    控制字符串必須用雙引號括起,由格式說明和普通字符兩部分組成。
    1.格式說明
    一般格式為:
    %[<修飾符>]<格式字符>
    格式字符規定了對應輸出項的輸出格式,常用格式字符見表3-2。

    可以看出,當指定場寬小于數據的實際寬度時,對整數,按該數的實際場寬輸出,對浮點數,相應小數位的數四舍五入。例如:12.34567按%5.2f輸出,輸出12.35。若場寬小于等于浮點數整數部分的寬度,則該浮點數按實際位數輸出,但小數位數仍遵守寬度修飾符給出的值。如上面的12.34567按%2.1f輸出,結果為:12.3。
    在實際應用中,還有一種更靈活的場寬控制方法,用常量或變量的值作為輸出場寬,方法是以一個"*"作為修飾符,插入到%之后。
    例如:i=123;
    printf("%*d",5,i);

    longintb;
    shortintc;
    unsignedintd;
    chare;
    floatf;
    doubleg;
    a=1023;
    b=2222;
    c=123;
    d=1234;
    e='x';
    f=3.1415926535898;
    g=3.1415926535898;
    printf("a=%d\n",a);
    printf("a=%0\n",a);
    printf("a=%x\n",a);
    printf("b=%ld\n",b);
    printf("c=%d\n",c);
    printf("d=%u\n",d);
    printf("e=%c\n",e);
    printf("f=%f\n",f);
    printf("g=%f\n",g);
    printf("\n");
    }
    執行程序,輸出為:
    RUN¿
    a=1023
    a=1777
    a=3ff
    b=2222
    c=123
    d=1234
    e=x
    f=3.141593
    g=3.141593
    3.2.3getchar()函數與putchar()函數
    putchar()與getchar()是對單個字符進行輸入輸出的函數。
    getchar()的功能是返回鍵盤輸入的一個字符,它不帶任何參數,其通常格式如下:
    ch=getchar()
    ch為字符型變量,上述語句接收從鍵盤輸入的一個字符并將它賦給ch。
    putchar()的作用是向屏幕上輸出一個字符,它的功能與printf函數中的%c相當。putchar()必
    須帶輸出項,輸出項可以是字符型常量、變量、表達式,但只能是單個字符而不能是字符串。
    [例3-3]輸入一個字符,回顯該字符并輸出其ASCII碼值。
    #include<stdio.h>
    main()
    {
    charch;
    ch=getchar();
    putchar(ch);
    printf("%d\n",ch);
    }
    運行程序:
    RUN¿
    g¿
    g103
    需要注意的是,字符輸入輸出函數定義在頭文件stdio.h中,故當程序中使用putchar()或
    getchar()函數時,必須在main()之前用語句:
    #include"stdio.h"
    將stdio.h包含進來。
    3.2.4程序應用舉例
    [例3-4]下面的程序是一個復數加法的例子。
    #include<stdio.h>
    main()
    {
    floata1,b1,a2,b2;
    charch;
    printf("\t\t\tcomplexsAddition\n");
    printf("pleaseinputthefirstcomplex:\n");
    printf("\trealpart:");
    scanf("%f",&a1);
    printf("\tvirtualpart:");
    scanf("%f",&b1);
    printf("%5.2f+i%5.2f\n",a1,b1);
    printf("\npleaseinputthesecondcomplex:\n");
    printf("\trealpart:");
    scanf("%f",&a2);
    printf("\tvirtualpart:");
    scanf("%f",&b2);
    printf("%5.2f+i%5.2f\n",a2,b2);
    printf("\nTheadditionis:");
    printf("%6.3f+i%6.3f\n",a1+a2,b1+b2);
    printf("programnormalterminated,pressenter...");
    ch=getchar();
    ch=getchar();
    }
    運行結果如下:
    RUN¿
    complexsaddition
    pleaseinputthefirstcomplex:
    realpart:1.2
    virtualpart:3.4
    1.20+i3.40
    pleaseinputthesecondcomplex:
    realpart:5.6
    virtualpart:7.8
    5.60+i7.80
    Theadditionis:6.800+i11.200
    programnormalterminated,pressenter....


    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>