Hinc lude <math. hx 第三章 tdefine EPs void main doub 户有定义函数原型说明 scan pI %f% doub In double term. while( fab n=n+1 信息科学技术学院C语言程序设计教学组
C Programming Language>第三章 第三章语句与控制流 言★内容提要: C语句的分类 >语句分类表 空语句与复合语句 空语句与复合语句 条件分支语句 >条件分支语包 循环控制语句与嵌套 循环控制语句 执行流程强制转移 >程序示例 编程常用技巧 流程强制转移 US bajia( ustc,odL. co94959
第三章 语句与控制流 ★ 内容提要: C语句的分类 空语句与复合语句 条件分支语句 循环控制语句与嵌套 执行流程强制转移 编程常用技巧 ➢ 语句分类表 ➢ 空语句与复合语句 ➢ 条件分支语句 ➢ 循环控制语句 ➢ 程序示例 ➢ 流程强制转移
C Programming Language>第三章 第三章语句与控制流 C语言是一种很好的结构化程序设计 语言,它提供了比F0 RTRAN、 PASCLE更丰 富的流程控制语句,还提供了将多个语 设句组合成一个语句的复合语句 US bajia( ustc,odL. co94959
C语言是一种很好的结构化程序设计 语言,它提供了比FORTRAN、PASCLE更 丰 富的流程控制语句,还提供了将多个语 句组合成一个语句的复合语句。 第三章 语句与控制流
C Programming Language>第三章 G语句的分类 函数调用语句 函数调用加分号构成 简单的顺[表达式语句 序执行语 表达式加分号构成 句 空语句 只有一个分号的语句 复合语句 花括号括起来的语句 分|if()~else 条件分支语句 流支 程转 switch 多分支选择语句 控|移| break, conti nue, return,goto无条件转移语句 设计 制 while()N 「当 循环 语|循 句环d~mhle() 直到型循环 for() for循环 标号语句以上语句添加标号,构成标号语句, US bajia( ustc,odL. co94959
标号语句 以上语句添加标号,构成标号语句, for( ) ~ for循环 do ~ while( ) 直到型循环 while( ) ~ 当循环 循 环 break,continue,return,goto 无条件转移语句 switch 多分支选择语句 分 if( )~else ~ 条件分支语句 支 转 移 流 程 控 制 语 句 复合语句 花括号括起来的语句 空语句 只有一个分号的语句 表达式语句 表达式加分号构成 函数调用语句 函数调用加分号构成 简单的顺 序执行语 句 标号语句 以上语句添加标号,构成标号语句, for( ) ~ for循环 do ~ while( ) 直到型循环 while( ) ~ 当循环 循 环 break,continue,return,goto 无条件转移语句 switch 多分支选择语句 分 if( )~else ~ 条件分支语句 支 转 移 流 程 控 制 语 句 复合语句 花括号括起来的语句 空语句 只有一个分号的语句 表达式语句 表达式加分号构成 函数调用语句 函数调用加分号构成 简单的顺 序执行语 句 C 语 句 的 分 类
C Programming Language>第三章 G语句的分类 函数调用语句 函数调用加分号构成 简单的顺 构成 序执行语 句 定:为飘遗筒方,的语句 的语句 分几以后在语添式中出魂的 霜|套·语句一调,绚据以上覆 控移 设计 高|中的各种语句 句环 for() for循环 标号语句以上语句添加标号,构成标号语句, US bajia( ustc,odL. co94959
标号语句 以上语句添加标号,构成标号语句, for( ) ~ for循环 do ~ while( ) 直到型循环 while( ) ~ 当循环 循 环 break,continue,return,goto 无条件转移语句 switch 多分支选择语句 分 if( )~else ~ 条件分支语句 支 转 移 流 程 控 制 语 句 复合语句 花括号括起来的语句 空语句 只有一个分号的语句 表达式语句 表达式加分号构成 函数调用语句 函数调用加分号构成 简单的顺 序执行语 句 标号语句 以上语句添加标号,构成标号语句, for( ) ~ for循环 do ~ while( ) 直到型循环 while( ) ~ 当循环 循 环 break,continue,return,goto 无条件转移语句 switch 多分支选择语句 分 if( )~else ~ 条件分支语句 支 转 移 流 程 控 制 语 句 复合语句 花括号括起来的语句 空语句 只有一个分号的语句 表达式语句 表达式加分号构成 函数调用语句 函数调用加分号构成 简单的顺 序执行语 句 C 语 句 的 分 类 约定:为叙述简捷方便, 凡以后在语法形式中出现的 ‘语句’一词,均指以上表 中的各种语句
C Programming Language>第三章 空语句与复合语句 空语句:只有一个分号的语句,属于不进行任 何操作的语句 过滤掉输入字符流中的空白、回车换行和制表符的 句,循体是一个空语句 while((c=getchar O) ||c="\n'lc="lt") 计算字符串的长度语句,其循环体是一个空语句: for(i=0;a[i]!="\0;i+) US bajia( ustc,odL. co94959
一、空语句与复合语句 空语句:只有一个分号的语句,属于不进行任 何操作的语句。 过滤掉输入字符流中的空白、回车换行和制表符的 语句。循环体是一个空语句: while((c=getchar())==' '||c=='\n'||c=='\t') ; 计算字符串的长度语句,其循环体是一个空语句: for( i=0; a[i]!='\0'; i++ ) ;
C Programming Language>第三章 复合语句:在程序中用大括号括起来的若干语 句成为复合语句。一般形式 ●执行语句可以是简 数据说明部分;单语句、构造语句, 还可以是复合语句。 执行语句部分;·在复合语句内部定 义的变量,其作用域 仅限于该复合语句的 内部; US bajia( ustc,odL. co94959
复合语句:在程序中用大括号括起来的若干语 句成为复合语句。一般形式: { 数据说明部分; 执行语句部分; } ⚫ 执行语句可以是简 单语句、构造语句, 还可以是复合语句。 ⚫ 在复合语句内部定 义的变量,其作用域 仅限于该复合语句的 内部;
C Programming Language>第三章 例[1]:比较a,b的大小,且把大者赋给变量x,小的 赋给变量y,并打印输 include void maino i a int a, b, x, y 运行结果: if(a>b) )g, y= x=3y=2 else i X-b, y=a, printf( x=%d y=%d\n",x, y) US bajia( ustc,odL. co94959
例[1]:比较a, b 的大小,且把大者赋给变量x,小的 赋给变量y,并打印输。 #include void main(){ int a,b,x,y; a=2; b=3; if(a>b){ x=a; y=b; } else{ x=b; y=a; } printf("x=%d y=%d\n",x, y); } 运行结果: x=3 y=2
C Programming Language>第三章 、条件语句(if) 非零(真 1.两种基本形式: 表达式 语句1 语句2 基本形式1 if(表达式)语句1else语句2 非零(真) 基本形式2: <表达式? if(表达式)语句1 语句1 US bajia( ustc,odL. co94959
二、条件语句(if) 1. 两种基本形式: 基本形式1: if(表达式)语句1 else 语句2 表达式? 语句1 语句2 非零(真) 零 表达式? 语句1 语句2 非零(真) 零 表达式? 语句1 非零(真) 零 基本形式2: if(表达式)语句1
C Programming Language>第三章 例[2]:比较a,b的大小,且把大者赋给变量x,小 的赋给变量y,并打印输。 include void maino int a, b, x, y: a=2 b=3: if(a>b)i x=a, y=b 运行结果 3y=2 e⊥se x=b; y=a printf( x=%d y=%d\n"x, y) US bajia( ustc,odL. co94959
例[2]:比较a, b 的大小,且把大者赋给变量x,小 的赋给变量y,并打印输。 #include void main(){ int a,b,x,y; a=2; b=3; if(a>b){ x=a; y=b; } else { x=b; y=a; } printf("x=%d y=%d\n",x, y); } 运行结果: x=3 y=2