- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4章 C语言程序控制结构 4.1 顺序结构 顺序结构是最简单的C语言程序结构,也是C语言程序中最常用的程序结构。 顺序结构程序的设计步骤如下: (1)用预处理命令包含文件或进行宏定义(随情况而定,不必须); (2)定义变量; (3)为变量赋初值; (4)进行运算和数据处理; (5)输出运算结果数据。 4.2 分支结构 在顺序结构程序中,程序的流程是固定的,不能发生跳转,只能按照语句书写的先后顺序逐条逐句执行。如果希望计算机根据不同的情况采取不同的动作,就要使用分支结构,就像打乒乓球一样,要根据对方当前打的球来决定自己该怎么打。在C语言中,用if条件语句和switch多分支选择语句来实现选择程序结构。实际上,也可以用if语句来代替switch语句。 4.2.1 if条件语句 在C语言中,条件语句的一般形式如下: if(表达式) 语句1; else 语句2; 上述结构表示:如果表达式的值为非0(True)即真, 则执行语句1,执行完语句1从语句2后开始继续向下执行;如果表达式的值为0(False)即假,则跳过语句1而执行语句2。 4.2.2 switch多分支选择语句 在编写程序时,经常会碰到按不同情况分转的多路问题,这时可用嵌套if…else…if语句来实现,但if…else…if语句使用不方便,并且容易出错。对这种情况,C语言提供了一个多分支选择语句,其格式为: switch(表达式) { case 常量1: 语句1或空; break; case 常量2: 语句2或空; break; … case 常量n; 语句n或空; break; default: 语句n+1或空; } 执行switch开关语句时,将变量逐个与case后的常量进行比较,若与其中一个相等,则执行该常量下的语句,若不与任何一个常量相等,则执行default后面的语句。 4.3 循环结构 在许多问题中,我们需要根据条件重复地做某事,这时就要用到循环控制结构,在C语言中,有以下几种循环语句: for语句 while语句 do…while语句 4.3.1 for语句 C语言中的for语句应用非常灵活,其主要用于定数循环,也可用于不定数循环。其形式如下: for(表达式1;表达式2; 表达式3) { 循环语句; } 表达式1一般是一个初始化赋值语句,它用来给循环控制变量赋初值;表达式2一般是一个条件表达式,它决定什么时候退出循环;表达式3一般是一个增量表达式,定义循环控制变量每循环一次后按什么方式变化。这3个部分之间用;隔开。 4.3.2 while语句 while循环的一般形式为: while(表达式) { 循环语句; } while循环表示当表达式为真时,便执行循环语句。直到表达式为假才结束循环。并继续执行循环程序外的后续语句。其执行步骤如下: (1)对表达式进行判断; (2)表达式为真则执行循环语句,为假则退出循环; (3)执行循环语句后再次对表达式进行判断; (4)跳到步骤(2)执行。 4.3.3 do…while语句 do…while循环的一般格式为: do { 循环语句; }while(表达式); 这个循环与while循环的不同在于:它先执行循环中的语句,然后再判断条件是否为真,如果为真则继续循环;如果为假则终止循环。因此,do…while循环至少要执行一次循环语句。 其执行步骤如下: (1)先执行循环语句; (2)判断表达式的值是真是假,若为真重复步骤(1);若为假退出循环。 同样,当有许多语句参加循环时,要用{和}把它们括起来。 4.3.4 循环嵌套 上面所讲的3种循环语句是可以相互嵌套的,可以在一个循环体的内部出现另一条循环语句,这种嵌套在理论上来说可以是无限的。 例如,可用以下的程序段来把矩阵数据读入数组data[5][5]中(有关数组的知识在第5章介绍): int data[5][5],i,j; for(i=0;i5;i++) for(j=0;j5;j++) scanf(%d,a[i][j]); 同样把数组中的数据输出到显示器上的程序段可以写为: for(i=0;i5;i++) { for(j=0;j5;j++) printf(%3d,a[i][j]); printf(\n); } 在上面的程序段中,先执行外层循环i=0,然后进入内循环,当内循环执行5次后退出内循环,进行第二次外循环i=1,然后内循环再执行5次,直到i=5时退出循环,这个循环共执行5*5=25次。 4.4 break,continue和goto语句 4.4.1 break
您可能关注的文档
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯2 第5章 SMTP与POP3应用编程.ppt
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯2 第6章 网络数据加密与解密.ppt
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯2 第7章 三维设计与多媒体编程.ppt
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯习题答案 第01章 习题解答.doc
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯习题答案 第02章 习题解答.doc
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯习题答案 第03章 习题解答.doc
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯习题答案 第05章 习题解答.doc
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯习题答案 第06章 习题解答.doc
- C#网络应用高级编程 教学课件 作者 马骏 郑逢斌 沈夏炯习题答案 第07章 习题解答.doc
- C#应用程序设计 教学课件 作者 韦鹏程 张伟 朱盈贤 第1章 初识C#.ppt
- C_C++程序设计教程与上机实训 教学课件 作者 于文强 程立福 毛慧凤 第五章.PPT
- C_C++程序设计教程与上机实训 教学课件 作者 于文强 程立福 毛慧凤 第一章.PPT
- C++ Builder 6程序设计教程 教学课件 作者 陆卫忠 刘文亮 等 第二章简单应用程序设计.ppt
- C++ Builder 6程序设计教程 教学课件 作者 陆卫忠 刘文亮 等 第九章多媒体与图形处理.ppt
- C++ Builder 6程序设计教程 教学课件 作者 陆卫忠 刘文亮 等 第六章c++Builder数据库开发环境.ppt
- C++ Builder 6程序设计教程 教学课件 作者 陆卫忠 刘文亮 等 第七章数据库应用程序设计.ppt
- C++ Builder 6程序设计教程 教学课件 作者 陆卫忠 刘文亮 等 第十一章c++Builder高级应用.ppt
- C++ Builder 6程序设计教程 教学课件 作者 陆卫忠 刘文亮 等 第十章C++基础.ppt
- C++ Builder 6程序设计教程 教学课件 作者 陆卫忠 刘文亮 等 第四章菜单与工具栏.ppt
- C++ Builder 6程序设计教程 教学课件 作者 陆卫忠 刘文亮 等 第一章概述.ppt
文档评论(0)