序
程式語言是電腦語言,是人類要求電腦依我們的想法去做事的語言,既然是一種語言,其學習的方法就和我們學中文、美語相似。我們在學中文或美語時,最重要的是要學會「聽、說、讀、寫」,而我們在學程式語言時,最重要的是要學會「讀、寫」。
我大學時所修的程式語言是Fortran,它是一學期3 小時的課,它的語法不多,老師的教學重點是強調大家要會寫程式,所以我的同學們幾乎都會寫程式。現在的程式語言,如C、C++、⋯⋯,其語法非常多,還是一學期3 小時的課,有些老師為了將全部的語法教完,大多數的上課時間都在教語法,而忽略學習程式語言最重要的是要會寫程式。現在很多程式語言的教科書也花很多篇幅在介紹語法,而最重要的程式範例卻很少,加上很多教科書都「教其然,不教其所以然」,例如:變數為何要宣告、程式為何要這樣寫、⋯⋯。以至於現在很多學生學完一學期的程式語言課還是不會寫程式,這就好像英文系畢業的學生不會講英文一樣,白學了。
我教我們系上程式語言課時,就是大量的做練習,發現很多學生使用if 敘述還能得心應手,但到了for 敘述時,使用起來就有點障礙了,學不會就是要多練習。我上課不要求把全部的語法教完,而是要求要會寫程式,要求多練習寫程式,學生普遍反應良好。
C語言是很早就被提出來的程式語言,由於它有很多的優點,以至於到現在還沒被淘汰,且有很多的程式語言是以C語言為基礎發展出來的。C語言的if、for、while敘述、陣列、函數和檔案處理是很多種程式語言共同有的內容,且很多領域只需要用到這些內容就足以應付其工作所需。
有鑑於此,本書僅介紹這些語法,搭配充足的例子,「寫其然,亦寫其所以然」, 再由「中文的用法」導入「程式語言的語法」,來讓讀者可以很容易地進入程式語言的領域。「凡事起頭難」,只要讀者學會這些內容,要再看其他程式語言的內容,相信就能很快地進入狀況。
最後,非常感謝五南圖書股份有限公司對此書的肯定,此書才得以出版。本書雖一再校正,但錯誤在所難免,尚祈各界不吝指教。
林振義 謹誌