C语言程序的结构

上传人:卷*** 文档编号:199752855 上传时间:2023-04-12 格式:DOCX 页数:8 大小:18.68KB
收藏 版权申诉 举报 下载
C语言程序的结构_第1页
第1页 / 共8页
C语言程序的结构_第2页
第2页 / 共8页
C语言程序的结构_第3页
第3页 / 共8页
资源描述:

《C语言程序的结构》由会员分享,可在线阅读,更多相关《C语言程序的结构(8页珍藏版)》请在装配图网上搜索。

1、语言程序的结构C语言程序的结构 语言的运算符包含的范围很广泛,共有3种运算符。语言把括号、赋值、强制类型转换等都作为运算符处理。下面是我整理的关于C语言程序的结构,希望大家仔细阅读!(1)依次结构 依次结构的程序设计是最简洁的,只要根据解决问题的依次写出相应的语句就行,它的执行依次是自上而下,依次执行。 例如: = 3,b=5,现交换a,的值,这个问题就似乎交换两个杯子水,这当然要用到第三个杯子,假如第三个杯子是c,那么正确的程序为: c a; a b; = ; 执行结果是 5,b 假如变更其依次,写成:a = b;c a;b =c; 则执行结果就变成a = c =,不能达到预期的目的,初学者

2、最简单犯这种错误。依次结构可以独立运用构成一个简洁的完整程序,常见的输入、计算,输出三步曲的程序就是依次结构,例如计算圆的面积,其程序的语句依次就是输入圆的半径r,计算s = 3.14159*r*r,输出圆的面积。 不过大多数状况下依次结构都是作为程序的一部分,与其它结构一起构成一个困难的程序,例如分支结构中的复合语句、循环结构中的循环体等。(2) 分支结构 依次结构的程序虽然能解决计算、输出等问题,但不能做推断再选择。对于要先做推断再选择的问题就要运用分支结构。分支结构的执行是依据肯定的条件选择执行路径,而不是严格根据语句出现的物理依次。分支结构的程序设计方法的关键在于构造合适的分支条件和分

3、析程序流程,依据不同的程序流程选择适当的分支语句。 分支结构适合于带有逻辑或关系比较等条件推断的计算,设计这类程序时往往都要先绘制其程序流程图,然后依据程序流程写出源程序,这样做把程序设计分析与语言分开,使得问题简洁化,易于理解。程序流程图是依据解题分析所绘制的程序执行流程图。 学习分支结构不要被分支嵌套所迷惑,只要正确绘制出流程图,弄清各分支所要执行的功能,嵌套结构也就不难了。嵌套只不过是分支中又包括分支语句而已,不是新学问,只要对双分支的理解清晰,分支嵌套是不难的。下面我介绍几种基本的分支结构。 if(条件)分支体 这种分支结构中的分支体可以是一条语句,此时;可以省略,也可以是多条语句即复

4、合语句。它有两条分支路径可选,一是当条件为真,执行分支体,否则跳过分支体,这时分支体就不会执行。如:要计算x的肯定值,依据肯定值定义,我们知道,当x&;0时,其肯定值不变,而lt;时其肯定值是为x的反号,因此程序段为:if(x<0)x=-; if(条件) 分支1 els 分支2 这是典型的分支结构,假如条件成立,执行分支1,否则执行分支,分支1和分支2都可以是1条或若干条语句构成。 如:求ax2bx0的根 分析:因为当b4ac&g;=0时,方程有两个实根,否则(b2-4ac<)有两个共轭复根。其程序段如下: ain() n a,,c,d,x,; printf(&qot;Pla te

5、 nuer o a,≈c from the quadai equion of onevaial e by oen&uo;); scanf(qot;%d%d%",&a,&am;b,&a;); d=b-4*a*c; i(d<) pintf(uot;NO o!Wrong!&qu;); le y=-b-qrt(d)/2*; x=-+sqrt(d)/2*a; pitf(uot;he 1st eqation root=%nThe 2d eqtio ot%",,x); IF嵌套分支语句: 其语句格式为: if(条件1) 分支1 else if(条件2) 分支2le i

6、f(条件)分支3&ellp;&heip; ese(条件n) 分支n else分支n1 FOR嵌套,其语句格式为: for(初值A;范围A;步长A) fo(初值B;范围;步长B) 循环体 FO嵌套例子:九九乘法表 mai() ina,b,;r(a=1;&t;=;+)fr(b=;b<=a;b+) c=*a;prnf(&qut;x%d=% ",b,a,c); pnf(uot;n&uot;); 嵌套分支语句虽可解决多个入口和出口的问题,但超过重嵌套后,语句结构变得特别困难,对于程序的阅读和理解都极为不便,建议嵌套在3重以内,超过3重可以用下面的语句。 with开关语句 该语句也是多分支

7、选择语句,究竟执行哪一块,取决于开关设置,也就是表达式的值与常量表达式相匹配的那一路,它不同ifhelli;ese语句,它的全部分支都是并列的,程序执行时,由第一分支起先查找,假如相匹配,执行其后的块,接着执行第分支,第3分支&hli;…的块,直到遇到break语句;假如不匹配,查找下一个分支是否匹配。这个语句在应用时要特殊留意开关条件的合理设置以及break语句的合理应用。 (3)循环结构:循环结构可以削减源程序重复书写的工作量,用来描述重复执行某段算法的问题,这是程序设计中最能发挥计算机特长的程序结构,C语言中供应四种循环,即got循环、while循环、do?hle循环和or

8、循环。四种循环可以用来处理同一问题,一般状况下它们可以相互代替换,但一般不提倡用goto循环,因为强制变更程序的依次常常会给程序的运行带来不行预料的错误,在学习中我们主要学习hile、do&helip;hil、for三种循环。 常用的三种循环结构学习的重点在于弄清它们相同与不同之处,以便在不同场合下运用,这就要清晰三种循环的格式和执行依次,将每种循环的流程图理解透彻后就会明白如何替换运用,如把whie循环的例题,用fr语句重新编写一个程序,这样能更好地理解它们的作用。特殊要留意在循环体内应包含趋于结束的语句(即循环变量值的变更),否则就可能成了一个死循环,这是初学者的一个常见错误。 在学完这三

9、个循环后,应明确它们的异同点:用ile和d&hellp;whi循环时,循环变量的初始化的操作应在循环体之前,而for循环一般在语句1中进行的;whle循环和fr循环都是先推断表达式,后执行循环体,而d…hil循环是先执行循环体后推断表达式,也就是说d&hellip;whle的循环体最少被执行一次,而while循环和fr就可能一次都不执行。 另外还要留意的是这三种循环都可以用rek语句跳出循环,用ctiue语句结束本次循环,而goto语句与i构成的循环,是不能用ba和 contnu语句进行限制的。 依次结构、分支结构和循环结构并不彼此孤立的,在循环中可以有分支、依次结构,分支中也可

10、以有循环、依次结构,其实不管哪种结构,我们均可广义的把它们看成一个语句。在实际编程过程中常将这三种结构相互结合以实现各种算法,设计出相应程序,但是要编程的问题较大,编写出的程序就往往很长、结构重复多,造成可读性差,难以理解,解决这个问题的方法是将程序设计成模块化结构。()模块化程序结构C语言的模块化程序结构用函数来实现,即将困难的C程序分为若干模块,每个模块都编写成一个C函数,然后通过主函数调用函数及函数调用函数来实现一大型问题的C程序编写,因此常说:程序=主函数+子函数。因此,对函数的定义、调用、值的返回等中要尤其注意理解和应用,并通过上机调试加以巩固。 三驾驭一些简洁的算法编程其实一大部分工作就是分析问题,找到解决问题的方法,再以相应的编程语言写出代码。这就要求驾驭算法,依据我们的C程序设计教学大纲中,只要求我们驾驭一些简洁的算法,在驾驭这些基本算法后,要完成对问题的分析就简单了。如两个数的交换、三个数的比较、选择法排序和冒泡法排序,这就要求我们要清晰这些算法的内在含义。本文来源:网络收集与整理,如有侵权,请联系作者删除,谢谢!第8页 共8页第 8 页 共 8 页第 8 页 共 8 页第 8 页 共 8 页第 8 页 共 8 页第 8 页 共 8 页第 8 页 共 8 页第 8 页 共 8 页第 8 页 共 8 页第 8 页 共 8 页第 8 页 共 8 页

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!