CC++程式设计范例教本-第二版

举报
资源描述
C/C+程式 十轮例教本第二版飕解答 2006/06/30第 1 章:程 式 言 舆 C 1吾言的基磁1明什麽是程式、软 和 鹰 用 程 式?A.程式(Program s)是使用指定程式 言所撰嘉没有混淆文字、数字和维然符虢 成的特殊符虢,造些符虢系且合成指令和叙述,再暹一步编嘉成程式碉,程 式 礁 可 以 告 解 决 指 定 冏 题 的 步 骤。程 式 如 同 一 偃 换 器,常彳他坐或滑鼠取得输入资料彳爰,轨行程式就可以招资料傅换成有用的资1凡,如下Iffl所 示:输入资料-程式(Program)-翰出皓果rj (Softwares)是一槿雷:月第轨行的用程式或作渠系统,通常软醴是一偃I或多傕I程式的泛耦,或 是 一 整 套 用 程 式。鹰用程式(Applications)是一槿虑理指定工作的重月辍程式,例 如:数 十算分析、文善虑理、1式算表和程式言吾言整合 工具等。2.春兑明程式 言的世代、低B皆和高F皆程式|吾言的差昊?A.目前的程式 言相富多,程式言吾言随著重月窗科技的迤步,已 延伸出 大 的 族 群,在程式言吾言的分 上,以樊展的世代来分,如下表所示:2 C程 式 靶 例 教 本在 上 表 的 第 四 代 言 是 不 同 用 程 式 使 用 的 程 式 言 吾 言,例 如:资料廛 查 前 的SQL 言。第五代程式 言主要是使用在人工智慧和事家系系充的暹辑分析,也 耦 篇 自然言吾言(Natural Languages)。世代程 式 言第一世代檄器言吾言(Machine Languages)第二世代系且合言吾言(Assembly Languages)第三世代高 卜 皆 1吾言(High Level Languages)第四世代愿 用 程 式 崖 生 的1吾 言(Application-GenerationLanguages)或查信旬官吾言(Query Languages)第五世代暹辑溥向暮吾言(Logic-Oriented Languages)程式言吾言如果依照程式撰嘉者的貌和度来显分,程式言吾言可以分舄偏向重月窗了解或是撰瘾者容易了解的低F皆和高F皆程式言吾言,言羊黜的 明2 小。低卜皆 言低 鞠 吾 言(Low Level Languages)是T 重偏向匐畿容易了解的程式言,腐於雷月 看的懂的程式言吾言,轨 行 效 率 高,但是使用者不易擘露高卜皆得吾言高B皆 言 吾 言(High Level Languages)是一槿接近人 得吾言的程式言吾言,可以 耦 焉 半 英 文(Half-english)的 程 式 言,因篇重月倒不能焉上看曾题解答的 懂,所以需要迤一步翻群,在审事换成檄器 言彳爰,其斡换出的程式碣通常比直接使用檄器官吾言撰嘉的冗晨,所以效率较低,但是非常遹合使用者3,比敕褊群和直葬程式 言的差昊,加各犀出2 槿程式 言:g 例?A.目前常冕的高F 皆 言 有 C/C+C#Java、FORTRAN、COBOL、Pascal、和 BASIC等,高E 皆 言需要迤行翻群,符程式碣傅群成械器官吾言的轨行槽案彳爰,才 能 在 上 轨 行,翻群的方式分焉雨槿,如下所示:编 群 程 式(Compilers)C/C+和 Java等程式言吾言腐於编群言,编群程式需要检查完整彳固程式槽案的程式礁,在完全没有金昔 的情况下,才曾翻群成械器 言的程式槽案,其主要的功能有雨项,如下所示:o检查程式 符程式翻群成械器官吾言的程式槽案。直 群 程 式(Interpreters)早期的BASIC言吾言(例如:BASICA QuickBasic等)和 目 前 技循f的 脚本(Scripts)g言,例 如:VBScript和 JavaScript都腐於直群得吾言,直群程式她不曾输出槽案,而是直接一彳固指令一低1 勤 作,一列一列的轨行程式礁,相封的其轨行效率低,但是非常遹合在系统E 皆段的程式除金昔。4.m 兑明擘曾程式言殳房十曾1 阳整哪些程式 十技循亍?4 C程 式 靶 例 教 本A.如果是一位初 程式微殳六十的 者,在逐渐建立深厚的程式1殳 六 十 功 力前,擘曾程式十需要 摩数彳固阜曾遇程,即 四 槿 程式 十技循L(Programming Techniques),或耦:B 程 式 言 殳 言 HM格 (ProgrammingStyles),如下所示:非系吉情化程式1甥十(Unstructured Programming)。程 序 式 程 式 十(Procedural Programming)舆系吉横化程式十(Structured Programming)o 模 系 且 化 程 式 言 殳 六 十(Modular Programming)。物件醇向程式常殳言十(Object-Oriented Programming)。5 IQ 兑明CPU割 I行械器鼠吾言指令的方式舆步骤?A.CPU孰行械器等吾言程式只是一一符储存在言辞意的械器言吾言指令 取出和轨行(Fetch-and-execute),曾罩的福兑,只是优胡I t醴取出指 令,然彼孰行此指令,取出下一偃1 指 令,再轨行它。CPU 轨行程式的方式:B :的主吉即意飕储存械器 言的程式礁和资料。o CPU 彳处春己|醴依序取出一彳固偃I檄器官吾言指令,然彼轨行它,CPU非真的了解檄器官吾言在作什麽?道只是CPU 的例行工作,依序轨行械器官吾言指令,所 以 使 用 者 十 的 程 式 不 能 有,因 焉 C PU 只是轨行它,加不曾替您的程式擦屁股。6目前佃1 人甯口普最常使用的英文字母符虢的内碣曷 一碣,繁飕中文是 W,一彳固中文字相常於 偃I英文字。曾题解答A.ASCII BIG5、27.明C 言吾言的版本,什麽 是 C+十 言 吾 言?目 前 C 1吾言的最新版本:B .。A.C 言吾言最早的才票型是K&R,1989年 ANSI制定才票型C 暮 吾 言 彳 爰,耦M ANSLC,1999年参考C+言的言吾法而作了少言午更新,WM C 99,如下所示:K&RC ANSI C C99在 1980年代晚期,Bjarne Stroustrup和 其 它 室 的 同 仁 替 C 言 吾 言新增物件蹲向的功能,耦 舄 C+,C+已 成:g 目前Windows作渠系统各槿鹰用程式主要的麋I彝言吾言。C998.1 前式著聚出C 暂吾言的2 项特黑占?A.c 程式等吾言直到现在仍然是一槿十分重要的程式 言,i t 然 彳 爰 i f 程式 言 吾 言 一一推 出,但是仍然没有一槿 言可以完全取代C 言 的 地 位。C 等吾言的特黑占如下所示:0 c是一槿结情化程式等吾言,掩有高卜皆程式言吾言的撰离JM格,但也掩有低E 皆程式言吾言,例 如:系且合言吾言的存取能力,可以直接控制重月窗遇 遏 的 硬 装 置,c 的指才票更可以直接存取官田意醴位址的资料。6 C程 式 靶 例 教 本o C是一槿非常普遍的程式言吾言,目前大多数的作渠系统都提供C言的褊群程式和木票型函式It,使 用C 言 的鹰用程式可以很容易移植到其它作渠系统。o C言吾言建立的轨行槽案很小,而且轨行速度快,事 上,C本身就是很小的程式言吾言,相富多C1吾言的功能是由C 1吾言檄型函式)g来提 供。o C 1吾言使用 前置1m理器(P re proc e ssor)理相富多的工作,例如:定 羲 巨 集 和 含 括 襟 槽 案,在模系且化程式1殳 昌 十 日 寺,木票 就是模系且函数的介面宣告。9,C 1吾言是 在1972年 於 同 室1殳 舒 一 的 程 式 后 吾言,C 用 吾 言的特,性是来自其前辈,吾言 一(由 K e n T hom p s o n下 殳1+)。A.D e nnis R itc hie B10C本 身 就 是 一 槿 很 小 的 程 式 言,相 常 多c 1吾言的功能是由_ _ _ _ _ _ _ _ _ _ _ _ _ _提 供。A.c 言襟型函式康11明程式言殳 的五偃I B皆段?在瞬言鄂皆段,可以再黜分成那三彳固I;皆段:、和。A.程式istt是符需要解泱的iw题穗换成程式礁,程式礁不只能多句在重月窗上正硅的轨行,而且可以瞬言登程式轨行的正碓性。基 本 上,程式1殳 三 十的谩程可以分成五隋段,如下is所 示:曾题解答上述ia例程式1殳六十遇程的各B皆 段 明,如下所示:需 求(R equirem ents)程式 十的需求是在了解冏题本身,以碓切攫得程式需要输入的资料和其颈期崖生的结果,如下B所 示:翰入资米-程式(Program)-翰出皓果上述B1例 示程式输入资料彳爰,轨行程式就可以输出轨行的结果。例 如:tf算出优1加 到100的 和,程式情|入资料是相加靶凰1和100,然彳爰轨行程式输出算结果5050。(D esign)在了解程式言殳告十的需求彼,我优就可以 始找尊解泱冏题的方法和策 略,曾 军 的,言殳制中皆段是找出解决冏II的步骤,如下11所 示:上述随I例指出输入资料需要系维遇虑理才能符资料醇换成有用的资m,也就是输出结果。例 如:1加 到100是1+2+3+4.+100的结果,程8 C程 式 靶 例 教 本式 是 使 用 数 算 的 加 法 来 解 决 冏 题,因焉需要重 行加法建算,所以第4章的迪1圈结横就派上用埸。再来看一彳固例子,如果需要符莘氏温度醇换成撮氏温度,输入资料是莘氏温度,温度傅换是一彳固数 公式,在 谩建算彳爰,就可得到撮氏温 度,也就是我凭所需的瓷1兄。换句后舌,舄了解决需求,程式需要轨行资料的 算或比较等操作,羊黜的轨行步,骤和I嗔序嘉下来,道就是言殳言卜解决冏题的方法,也就是第1-4-2直解兑明的演算法。分 析(Analysis)在解决需求畤只有一槿解决方法嚅?例 如:如 果 有100彳 固燮数,我福号可以宣告100彳 固 燮 数 存 资 料,或是使用障列(一槿资料结横)来储存,在分析E皆段是符所有可能解i夬冏题的演算法都嘉下来,然彳爰分析比较哪一槿方法比较好,逗择最好的演算法来撰嘉程式。如果不能分辨出哪一槿方法比较好,言声直接溟撵一槿方法畿 下一偃IE皆段,因:g在撰嘉程式礁口寺,如果亵现其另一槿方法比较好,我优可以焉上改篇另一槿方法来撰嘉程式礁。撰 嘉 程 式 礁(Coding)现在我仍与就可以 始使用程式密吾言撰嘉程式礁,以本耆焉例是使用C或c+g言,在 除撰嘉程式日寺,可能彝垣另一槿方法比较好,因焉尚殳舒 殳六十,有畤在 除撰嘉程式口寺才曾亵现其侵劣,如果适是一偃I良好的得殳言十方法,就算改篇其他方法也不曾太困I I。曾题解答不谩言殳言卜者有畤很辘下一彳固决定,就是考量畿 此方法,或是改舄其他方法重新 始,此日寺需视情况而定。不遇每次撰嘉程式碣最好只使用一槿方法,而不要同口寺使用多槿方法,如 此,在彝现冏魅碓定需要重新 始 畤,因 焉 已 有 撰 嘉 一 槿 方 法 的 ,第2次符曾更加的容易。(Verification)登是瞪明程式轨行的结果符合需求的输出资料,在造傕I卜皆段可以再细分成三彳固小陷段,如下所示:O瞪 明:轨行程式口寺需要IS明它的轨行结果是正碓的,程式符合所有输入资料的系且合,程式规格也都符合演算法的需求。涓原式:程式需要祖唁式各槿可能情况、修件和输入资料,以测就程式轨行辗言吴,如果有金器吴崖生,就需要除金昔来解决冏题。O除 :如果程式瓢法输出正硅结果,除金昔是在找出金昔官吴的地方,我优 不 但 需 要 找 出,逮 需 要 决 定 找 出 更 正 的 方 法。1 2 明 什 麽 是 演 算 法?言式著犀出2槿演算法的表示方法?A.在程式1殳舒一的言殳言邛皆段嘉出的解决冏题步骤、策略或方法就是 演算法(A lg o rith m s),其基本定羲如下:演算法是完成目襟工作的一吊且指令,道系且指令的步骤是有限的。除此之外,演算法遢必须满足一些修件,如下所示:输 入(In p u t):没有或数他外界的输入资料。输 出(O u tp u t):至少有一他I输出结果。明 硅 性(Definiteness):每一他指令步骤都十分
展开阅读全文
温馨提示:
金锄头文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
相关搜索

当前位置:首页 > 商业/管理/HR > 营销创新


电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号