C++语句和流程控制

上传人:woxinch****an2018 文档编号:44708319 上传时间:2018-06-14 格式:PPT 页数:48 大小:409.50KB
返回 下载 相关 举报
C++语句和流程控制_第1页
第1页 / 共48页
C++语句和流程控制_第2页
第2页 / 共48页
C++语句和流程控制_第3页
第3页 / 共48页
C++语句和流程控制_第4页
第4页 / 共48页
C++语句和流程控制_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《C++语句和流程控制》由会员分享,可在线阅读,更多相关《C++语句和流程控制(48页珍藏版)》请在金锄头文库上搜索。

1、第3章 语句和流程控制1本章学习要求:pC+语句的类型 pC+选择结构程序的设计 pC+循环结构程序的设计23.1 C+语句C+程序是由若干C+语句组成的,而且每个语句以分号(;)作为 结束符。C+语言的语句可以分为5类,分别是:定义语句、表达式语句、流 程控制语句、空语句和复合语句。 31定义语句 定义语句用于定义一个或多个变量。如: int a, b; float f = 0; 当执行到定义语句时,系统将在内存中为被定义的变量分配存储单元。2表达式语句 由表达式后加上分号构成的语句称为表达式语句。表达式语句是C+语言 中最基本的语句,表达式语句的一般形式为: 表达式; 例如: d = 2*

2、3.1415*r*r; a/c; a=b,b=2+c; 43流程控制语句 控制语句用于完成一定的控制功能,例如程序的选择控制、循环控制等 。C+语言中一共有9种控制语句。 语句种类语句形式功能说明 选择控制语句if( )else分支语句 switch( ) 多分支语句 循环控制语句for( ) 循环语句 while( ) 循环语句 dowhile( )循环语句 跳转控制语句break终止循环语句的执行 continue结束本次循环体语句 goto无条件转向语句 return返回语句54复合语句 复合语句是由一对大括号()括起来的任意条语句组成的,在语法上视为 一条语句。复合语句又可称为“语句块

3、”,复合语句的语句形式如下: 语句1; 语句2; ; 语句n; 如: int number = 1; cout #include using namespace std;int main() float x0, y0, x1, y1, x2, y2; /分别保存三个顶点的坐标 cout x0 y0; cout x1 y1; cout x2 y2; float len0, len1, len2; /求3条边的边长 len0 = sqrt(x0-x1)*(x0-x1) + (y0-y1)*(y0-y1); len1 = sqrt(x1-x2)*(x1-x2) + (y1-y2)*(y1-y2);

4、len2 = sqrt(x2-x0)*(x2-x0) + (y2-y0)*(y2-y0); /计算三角形面积 float area = 0; float s = 0; s = (len0 + len1 + len2) / 2; area = sqrt(s*(s-len0)*(s-len1)*(s-len2); cout 大于,如:ab双目=等于,如:a=b双目=大于等于,如:v=120双目!=不等于,如:rate!=1双目如: a+bc-d x3/2 a+1(bc) a!=(c=d) 等。13例 关系运算符的运算规则。#include using namespace std; int main

5、() char c=k; int i=1,j=2,k=3; float x=3e+5,y=0.85; /算术运算符的优先级比关系运算符高 cout =k+1) =(大于等于)、!=(不等于)由两个 符组成,中间不能有空格。 使用关系运算符比较浮点数时,最好只用 ,而不要使用其它关系运算 符。 这是因为,目前浮点数在计算机中的表示存在误差,可能导致两个本应相 等的浮点数在计算机中却表现为不相等。如果非要比较两个浮点数是否相等,常 用的办法是比较它们的差的绝对值是否小于某个较小的数(如 0.00001),也 就是比较它们是否大致相等。如判断两个浮点数a、b是否相等,可采用如下形 式的运算: fab

6、s(a - b) 3 int main() char letter = 0; cout letter; cout =A int main() float temperature = 0; cin temperature; if (temperature99) /温度超过99度,则报警 cout 返回值为true,则执行.25if () else 例 编制程序计算方程的根,a、b、c由键盘输入,假设。 解:根据一元二次方程的求根公式:式中:a0,b2-4ac0执行流程: 若返回值为true,则执行,否则执行.26#include #include /用来引入sqrt函数 using namesp

7、ace std; int main() double a, b, c,x1, x2; cout a b c; if (a=0) cout 和本身也可以是一个if语句,这种情况 称为嵌套的if语句。嵌套在一个if语句中的if语句也可以包含另一个嵌套的if语 句。一般情况下,可以像这样继续嵌套if语句,嵌套的次数也可以是任意多次 ,比较典型的嵌套语法为:if () else if () else if () else if () else 28例 输入一个三角形的三条边长,判断其为何种三角形。#include using namespace std; int main() int a, b, c;

8、 cout a b c; if (a+b) case : case : case : default: 30#include using namespace std; int main() int ticket_number = 0; cout ticket_number; switch(ticket_number) case 888: cout using namespace std;int main() int x = 0, y = 0; bool validx = true; /标记x是否在有效的范围内,如果不在,则不输出计算结果 cout x;if (x 2) int main() f

9、loat a,b; char c; cout a c b; switch(c) case +: cout 的返回值,若为true,执行第(2)步;若为false, 则执行第(3)步。 (2) 执行,结束后返回(1)步。 (3) 继续执行while语句后面的其他语句。while循环语句语法为: while () 36#include using namespace std; int main() int min, max; cout min max; int sum=0, temp=0; temp = min; while(temp 。 (2) 计算并判断的值,若为true,则转第(1)步,否则

10、,执行第(3)步 。 (3) 继续执行do-while语句后面的其他语句。 do-while语句写成: do while ();38#include using namespace std; int main() char ch=0; /为循环控制变量 int count=0; /温度的个数 double temperature=0.0; double tempsum = 0; /温度总和 double average=0.0; do cout temperature; tempsum += temperature; /建议多用个变量,看起来正规点 count+; coutch; while(

11、ch=y); average = tempsum / count; cout;) for语句的执行流程为: (1) 执行。 (2) 计算,若结果为true,则执行第(3)步;否则转第(4)步。 (3) 执行,执行;转第(2)步。 (4) 继续执行for语句后面的其他语句。 40#include using namespace std; int main() int count=0; cout count; for(long n=1,f=1; n using namespace std; int main(void) int i, n; double s = 100, h = s / 2; fo

12、r (i = 2; i using namespace std; int main( ) int n; cout n; int x1, x2; x1 = x2 = 1; int f,tmp; int i = 3; do x1 = x1 + x2; tmp = x2; x2 = x1; x1 = tmp; i+; while(i using namespace std; int main() char ch = 0; int count = 0; double temperature = 0.0; double average = 0.0; for( ; ; ) /无限循环 cout tempe

13、rature; average += temperature; count+; cout ch; if(ch = n | ch=N) break; /条件满足时,跳出循环 cout ;) . continue; . do . continue; . while(表达式);47例 求300以内能被17整除的所有整数 #include using namespace std; int main() int x,k; int cunt = 0; for (x=1; x=300; x+) if (x%17 != 0) continue; /直接到x+处执行 cout x ; cunt+; if (cunt=8) /每行打印8个 cout endl; cunt = 0; return 0; 48

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 高中教育

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