C程序設(shè)計語言概論(2)

字號:

輸入和輸出函數(shù)
     在前兩個例子中用到了輸入和輸出函數(shù)scanf和 printf,在第三章中我們要詳細介紹。這里我們先簡單介紹一下它們的格式,以便下面使用。scanf和 printf這兩個函數(shù)分別稱為格式輸入函數(shù)和格式輸出函數(shù)。其意義是按指定的格式輸入輸出值。因此,這兩個函數(shù)在括號中的參數(shù)表都由以下兩部分組成: “格式控制串”,參數(shù)表  格式控制串是一個字符串,必須用雙引號括起來,它表示了輸入輸出量的數(shù)據(jù)類型。各種類型的格式表示法可參閱第三章。在printf函數(shù)中還可以在格式控制串內(nèi)出現(xiàn)非格式控制字符,這時在顯示屏幕上將原文照印。參數(shù)表中給出了輸入或輸出的量。當有多個量時,用逗號間隔。例如:
    printf("sine of %lf is %lf\n",x,s);
     其中%lf為格式字符,表示按雙精度浮點數(shù)處理。它在格式串中兩次現(xiàn),對應(yīng)了x和s兩個變量。其余字符為非格式字符則照原樣輸出在屏幕上
    int max(int a,int b);
    main(){
    int x,y,z;
    printf("input two numbers:\n");scanf("%d%d",&x,&y);
    z=max(x,y);
    printf("maxmum=%d",z);
    }
    int max(int a,int b){
    if(a>b)return a;else return b;
    }
     此函數(shù)的功能是輸入兩個整數(shù),輸出其中的大數(shù)。
    /*函數(shù)說明*/
    /*主函數(shù)*/
    /*變量說明*/
    /*輸入x,y值*/
    /*調(diào)用max函數(shù)*/
    /*輸出*/
    /*定義max函數(shù)*/
    /*把結(jié)果返回主調(diào)函數(shù)*/
     上面例中程序的功能是由用戶輸入兩個整數(shù),程序執(zhí)行后輸出其中較大的數(shù)。本程序由兩個函數(shù)組成,主函數(shù)和max 函數(shù)。函數(shù)之間是并列關(guān)系??蓮闹骱瘮?shù)中調(diào)用其它函數(shù)。max 函數(shù)的功能是比較兩個數(shù),然后把較大的數(shù)返回給主函數(shù)。max 函數(shù)是一個用戶自定義函數(shù)。因此在主函數(shù)中要給出說明(程序第三行)。可見,在程序的說明部分中,不僅可以有變量說明,還可以有函數(shù)說明。關(guān)于函數(shù)的詳細內(nèi)容將在第五章介紹。在程序的每行后用/*和*/括起來的內(nèi)容為注釋部分,程序不執(zhí)行注釋部分。
     上例中程序的執(zhí)行過程是,首先在屏幕上顯示提示串,請用戶輸入兩個數(shù),回車后由scanf函數(shù)語句接收這兩個數(shù)送入變量x,y中,然后調(diào)用max函數(shù),并把x,y 的值傳送給max函數(shù)的參數(shù)a,b。在max函數(shù)中比較a,b的大小,把大者返回給主函數(shù)的變量z,最后在屏幕上輸出z的值。
     C源程序的結(jié)構(gòu)特點
     1.一個C語言源程序可以由一個或多個源文件組成。
     2.每個源文件可由一個或多個函數(shù)組成。
     3.一個源程序不論由多少個文件組成,都有一個且只能有一個main函數(shù),即主函數(shù)。
     4.源程序中可以有預(yù)處理命令(include 命令僅為其中的一種),預(yù)處理命令通常應(yīng)放在源文件或源程序的最前面。
     5.每一個說明,每一個語句都必須以分號結(jié)尾。但預(yù)處理命令,函數(shù)頭和花括號“}”之后不能加分號。
     6.標識符,關(guān)鍵字之間必須至少加一個空格以示間隔。若已有明顯的間隔符,也可不再加空格來間隔。
     書寫程序時應(yīng)遵循的規(guī)則
     從書寫清晰,便于閱讀,理解,維護的角度出發(fā),在書寫程序時 應(yīng)遵循以下規(guī)則:
     1.一個說明或一個語句占一行。
     2.用{} 括起來的部分,通常表示了程序的某一層次結(jié)構(gòu)。{}一般與該結(jié)構(gòu)語句的第一個字母對齊,并單獨占一行。
     3.低一層次的語句或說明可比高一層次的語句或說明縮進若干格后書寫。以便看起來更加清晰,增加程序的可讀性。在編程時應(yīng)力求遵循這些規(guī)則,以養(yǎng)成良好的編程風格。
     C語言的字符集
     字符是組成語言的最基本的元素。C語言字符集由字母,數(shù)字,空格,標點和特殊字符組成。在字符常量,字符串常量和注釋中還可以使用漢字或其它可表示的圖形符號。
     1.字母  小寫字母a~z共26個,大寫字母A~Z共26個
     2.數(shù)字  0~9共10個
     3.空白符 空格符、制表符、換行符等統(tǒng)稱為空白符??瞻追辉谧址A亢妥址A恐衅鹱饔谩T谄渌胤匠霈F(xiàn)時,只起間隔作用, 編譯程序?qū)λ鼈兒雎浴R虼嗽诔绦蛑惺褂每瞻追c否,對程序的編譯不發(fā)生影響,但在程序中適當?shù)牡胤绞褂每瞻追麑⒃黾映绦虻那逦院涂勺x性。
     4.標點和特殊字符
     C語言詞匯
     在C語言中使用的詞匯分為六類:標識符,關(guān)鍵字,運算符,分隔符,常量,注釋符等。
     1.標識符
     在程序中使用的變量名、函數(shù)名、標號等統(tǒng)稱為標識符。除庫函數(shù)的函數(shù)名由系統(tǒng)定義外,其余都由用戶自定義。C 規(guī)定,標識符只能是字母(A~Z,a~z)、數(shù)字(0~9)、下劃線()組成的字符串,并且其第一個字符必須是字母或下劃線。