GOTOP Fortran 95 程疗设计 彭国伦编著 健莲科技改编 22 and. 12.graden'A 团中用电力出照社 www.infopower.com.cn
前 言 这本书的前身,是笔者在997年出版的“精通Fortran90程序设计”。Fortran95这个 标准,与Fortran90比较起来其实并没有很大的差别:不过这本书在内容上做了许多修订, 把以前解释不足的地方都重新改写,尤其是数组、指针、MODULE的部分:另外在绘图及 数值计算方面还做了更详细的补充:对于Visual Fortran操作环境也做了更清楚的说明。 Fortran95包含Fortran77及Fortran90的原有功能,本书的目标是要让读者习惯新的 Fortran编写格式。不过因为甘前还不可能完全抛弃旧的规则,实例程序偶尔会使用古典风 格来编写,让读者温故知新。在书中会特别注明有哪些命令是Fortran90或Fortran95新添 加的功能,没有特别注明的部分都是从Fortran77延续下来的语法, 这本书对于程序设计方法的讲解,会重于Fortran语法的说明。因为只要掌握写程序的 方法,就有办法使用任何其他程序语言来编写程序。在书中除了会解释Fortran命令的语法, 还会说明为什么需要这个命令,还有什么时候该使用它。 在实例程序方面,前半部的程序主要是用来示范Fortran命令的语法:到后半部介绍 Fortran的应用时,才有机会看到比较实用及有趣的程序。等读者竿握Fortran基本语法能力 后,本书后半部会示范如何应用Fortran来从事数值计算、计算机绘图、窗口程序设计、与 Visual C/Visual Basic/Delphi的链接、甚至是游戏程序的编写。 下面是笔者的电子邮件及树页位置,随时欢迎您的任何指教。 电子螂件信箱pemg@cmlab..csie.ntu.edu.tw 本书网页http:www.mlab..csie.ntu.edu,tw~perng/book 移暖吟
导 读 本书的章节并不完全有关联性,第1章是计算机概论的介绍,第2章是编译器的使用, 读者可以根据自己的情况跳过它们。从第3章才开始进入下ortran程序的介绍。第3一9章介 绍的是Fortran的最基本的功能,第10、11章介绍的是比较高级的功能。建议读者应该完全 掌握第3~9章中的内容,如果时间不足,可以暂时先跳过第10、11这两章。 第12~17章介绍的是下oran的应用,这几个章节并没有关联性,在读完前9章之后 就有足够的基础来阅读其中任何一章。为了减少版面,在书中并没有显示第17章的内容, 这一章的内容做成电子书放在光盘上。 第12章介绍高级编译器的使用方法,示范如何编译链接库、如何使用调试工具。有一 部分在介绍Fortran与其他语言(Visual C/Visual Basic/Delphi)的链接。还有一部分会介绍 如何对程序进行优化处理,加快程序执行速度。 第13章是计算机绘图,从最基本的儿何图形绘制开始,到制作实时动画的方法:最后 会用两个游戏程序来作实例,这两个程序也用来打破一些人士对于Fortran只能用来做数值 计算的错误概念。 第14、16章是数值方法,第14章会详细介绍数值方法中的几种算法,并示范程序写 作的方法:第16章则会示范MSL链接车的使用。 第15章是数据结构及算法,这是在说明编写程序所应该要学习的一些基本方法及概念 第17章会介绍Visual Fortran的扩充功能,包含一些常用的扩充函数介绍及Visual Fortran 所提供的绘图及窗口程序设计功能。这一章的内容以文件的类型放在随书光盘上。 附录A是Fortran的库存函数说明,阅读完3~9章后,建议应该要翻到附录A看看Fortran 有哪些库存函数可以使用。附录B是ASCⅡ表,在第4章介绍过字符类型后,就应该去看 看这个表格
光盘使用说明 在光盘的根日录下有个INDEX.HTM文件,读者用测览器打开它就可以看到光盘内容 的导览。简单地说明一下文件的存旅情况: program chap02~chapl7这些目录下存放每一章的实例程序 ans\chap02-chap11 习题参考解答 Whook 书中没有显示的第17章的电子文件,提供WORD及PDF文件的 格式 document Fortran标准的文件,从Fortran7到最新的Fortran95,还有制订 中的Fortran200X草移 lsgl 笔者提供的SGL绘图链接库 GNUC/Ct+及Fortran7候译器
致谢 能够完成这本书,除了要感谢父母的养育,还要感谢台大造船系及台大信息工程所多 媒体实验室这几年的栽培。特别感谢造船系的蒋德普教授在Fortran方面的启蒙,及信息所 的饮阳明主任、吴家麟教授、陈文进教授等等在我在研究所阶段对我的照顾。另外如果没 有万云龙先生在我写第一本书时所给子的帮助,今天也不可能会有这本书。 当然还要感谢一群热心帮忙校稿的朋友,如果没有他们,我也不能顺利完稿。依校稿 的章节顺序分别是:许美云、张志鸿、黄建桦、陈继峰、蔡明怡,母亲江秋月女士也很辛 苦地帮忙做了整本书的第一次错字校正。 其他还要感谢的有在华硕计算机的彭伟伦,也是我的兄长,在学生时代经常会一起讨 论很多程序问题。还有台大资工所多媒体实验室的全体成员,感谢大家所共同创造出来的 学习环境