【正文】
。出現(xiàn)于“ scanf”中的字符型、整型、浮點(diǎn)型,以及記錄型(即結(jié)構(gòu)型)的任何變量都必須加上“&”操作符。 修改程序,進(jìn)行編譯并運(yùn)行,以確保程序無誤。 scanf(“ %d” ,amp。 這個程序還可以,不過,如果能將常量改為由程序讀入數(shù)值,則會更好一些。 必須注意,在“ printf”語句中,格式串中操作符的數(shù)目與后續(xù)的變量在類型及數(shù)目上要嚴(yán)格對應(yīng)。本例中格式串的兩個操作符(又叫作轉(zhuǎn)換說明),表示出現(xiàn)于后續(xù)參數(shù)表中的整型數(shù)值將被置于該 格式字符串的指定位置。雙引號中的部分叫作格式串,用于描述數(shù)據(jù)在輸出時的格式。在本例中,主函數(shù)包括三行語句,分別是賦值語句、 for循環(huán)語句,及 printf格式輸出語句。每一個 C語言程序都必須有一個名為“ main()”的函數(shù),可出現(xiàn)于 程序的任意位置,用以標(biāo)記程序的開始。其他常用的變量類型還有浮點(diǎn)型(指實數(shù)型)、字符型(指字符)等,其說明格式同整型類似。 “ define”一行定義了一個常量。 } 如例中所示, C 語言程序(代碼)以“ include”一句開始,其目的只是編譯程序?qū)?C標(biāo)準(zhǔn)函數(shù)庫蘊(yùn)含到用戶程序中,以便于讀寫數(shù)據(jù)、處理文本文件等等。I++) j=j*I。 for (I=1。以下這個程序用于計算 6的階乘: /*program to find factorial of 6*/ include define VALUE 6 int i,j。比如,某些運(yùn)算符的優(yōu)先順序存在錯誤;還有的語句在語法上可以更好一些,盡管如此,實踐業(yè)已證明 C語言在各種編程運(yùn)用中非常有效,并具有良好的表現(xiàn)力。 雖然 C語言可以充分發(fā)揮多數(shù)計算機(jī)的功能,但是,它并不依賴于具體的計算機(jī)體系結(jié)構(gòu),只需稍加注意,就可以編寫出可移植的應(yīng)用程序,也就是說程序不用修改就可以在各種機(jī)器上運(yùn)行。 ANSI C 還規(guī)定了一套標(biāo)準(zhǔn)的首標(biāo)文件,提供了對于函數(shù)說明及數(shù)據(jù)類型的統(tǒng)一使用方法。事實證明,對 C語言的這一擴(kuò)充非常奏效?,F(xiàn)在,在函數(shù)的說明中可以包含參數(shù)的描述;函數(shù)的定義語法也作了相應(yīng)的修改。 這一標(biāo)準(zhǔn)是基于早期的 C語言參考手冊建立的,相對而言,語言本身沒有多大變化;其目的之一就是為了保證現(xiàn)存的大多數(shù)程序可以有效運(yùn)行,或者,在不兼容的情況下,由編譯程序提出警告,說明(程序可能導(dǎo)致的)新的操作。 1983 年,美國國家標(biāo)準(zhǔn)協(xié)會( ANSI)成立了一個專門的委員會,對 C 語言進(jìn)行全面的、現(xiàn)代化的定義。鑒于 C語言相對較小,可以用比較少的篇幅予以描述,并可以短時間內(nèi)掌握。 基于同樣的道理, C語言僅僅提供了直接的、單線程的流程控制,如測試、循環(huán)、 分支及子程序等;沒有多道程序控制、并行操作、同步,協(xié)同例程管理。所有這些高層的機(jī)制都是由通過函數(shù)顯式調(diào)用的。除了函數(shù)內(nèi)的局部變量可以進(jìn)行靜態(tài)定義和堆堆棧無用內(nèi)存收集機(jī)制。 對于字符串、集合、表、數(shù)組等組合數(shù)據(jù)類, C語言沒有提供直接的操作。 C語言是一種相對低級的語言,也就是說它可以處理大多數(shù)機(jī)器本身所能處理的數(shù)據(jù)類型,如:字符、數(shù)值、地址等。變量可定義為函數(shù)的內(nèi)部變量,某一源文件中可以使 用的外 部變量,也可以定義為整個程序均可見的全程變量。函數(shù)定義不能嵌套,但是變量可以在塊結(jié)構(gòu)中說明。任何的函數(shù)均可以遞歸調(diào)用。如:語句分組、判定結(jié)構(gòu)( ifelse)、情況結(jié)構(gòu)( switch)、終止于頂部的循環(huán)結(jié)構(gòu)( while,for)、終止于底部循環(huán)結(jié)構(gòu)( do),及其循環(huán)中斷命令( break)。指針則可以提供與機(jī)器無關(guān)的地 址運(yùn)算。其中基本的數(shù)據(jù)類型包括:字符型、整數(shù)型、各種精度的浮點(diǎn)型、數(shù)組型、結(jié)構(gòu)型,及其聯(lián)合體。 BCPL語言和 B 語言都是“無類型的”語言。 BCPL 語言對于 C語言的影響是通過 B語言間接地進(jìn)行的。不 過, C 語言并不局限于某種操作系統(tǒng)或機(jī)型; C 語言一直被稱作一種“系統(tǒng)開發(fā)語言”,因為它在編寫編譯程序和操作系統(tǒng)方面特別有用,但是,在其他領(lǐng)域的大型程序開發(fā)方面也 表現(xiàn)得同樣出色。 作為一種通用的程序設(shè)計語言, C 語言是在 UNIX 環(huán)境下開發(fā)出來的。不過, C語言的這種低級性在某些應(yīng)用場合也顯得難以駕馭。不過,現(xiàn)在 C 語言已經(jīng)是一種與UNIX 無關(guān)的重要語言,雖然 C 語言是一種高級語言,但是它比其他 高級語言更接近于匯編語言。雖然 C語言最初是作為一種系統(tǒng)語言設(shè) 計的,但后來的實踐證明 C語言功能強(qiáng)大,也十分靈活,可以用于各種應(yīng)用程序,如商業(yè)軟件、工程項目等, C語言在個人計算機(jī)編程領(lǐng)域非常流行,因為 C語言規(guī)模較小 — 比其他語言需求的內(nèi)存少。operator in scanf on any variable of type char, int, or float, as well as record types. If you leave out the amp。 Make the changes, then pile and run the program to make sure it works. Note that scanf uses the same sort of format string as printf. The amp。 Scanf(“ %d” , amp。 } As shown in the example, C code starts with include , which instructs the piler to include the standard I/O library into your program so that you can read and write values, handle text files, and so on. C has a large number of standard libraries like stdio, including string, time and math libraries. The define line creates a constant. Two global variables are declared using the int i, j。 i++) j=j*I。 for (i=1。 some parts of the syntax could be better. Noheless, C has prov