Cpp-3_程序设计初步.pptVIP

  • 12
  • 0
  • 约1.71万字
  • 约 88页
  • 2019-12-02 发布于湖北
  • 举报
要使max存放x、y中大者, min存放小者,分析下面程序段正确否? if (x) y=sin(x)+sqrt(x*x+1); else y=cos(x)-x*x+3*x; if (xy) max = x; min = y; else max = y; min = x; 形式3: if (表达式1) 语句1 else if (表达式2) 语句2 ┆ else if (表达式n) 语句n else 语句n+1 作用:当表达式1的值为true时,执行语句1;否则判断当表达式2的值为true时执行语句2;依此类推,若表达式的值都为false,则执行语句n+1。 【例3.3】已知成绩mark,要求显示对应五级制的评定,评定条件: if (mark = 90) cout 优; else if (80 = mark mark 90) cout 良; else if (60 = mark mark 70) cout 及格; else if (70 = mark mark 80) cout 中; else cout 不及格; if (mark = 60) cout 及格; else if( mark = 70) cout 中; else if (mark = 80) cout 良; else if (mark =90) cout 优; else cout 不及格; 分析下面两程序段: 注意: ① 不管有几个分支,程序执行一个分支后,其余分支不再执行。 ② else if不能写成elseif。 ③ 当多分支中有多个表达式同时满足,则只执行第一个与之匹配的语句。 if语句的嵌套形式 if语句的嵌套是指if或else后面的语句本身又是一个if语句。 如: if(表达式1) if(表达式11) 语句11 else 语句12 else 语句2 if (表达式1) if (表达式2) 语句1 else 语句2 注意: 为了增强程序的可读性,建议采用锯齿型的书写形式。 else始终与它上面的最近的if语句配对,而这个if语句又没有 其它的else与之匹配 。 如何使之与第一个if配对? 【例3.4】已知x,y,z三个数,使得xyz。 可用一个IF语句和一个嵌套的IF语句实现。 if (xy) { t=x ; x=y ; y=t; } if (yz) { t=y ; y=z ; z=t ; if (xy) { t=x ; x=y ; y=t ;} } 3.2.2 switch语句 形式: switch(表达式) {case 常量表达式1:语句组1; [break;] case 常量表达式2:语句组2; [break;] ┆ case 常量表达式n:语句组n; [break;] [default: 语句组n+1] } 执行顺序:当表达式的值与某个常量表达式的值相等时,则执行该常量表达式后面相应的语句,若使用了break, 则执行完该语句后便退出switch语句;否则,还要依次执行其后面的各条语句。若找不到相匹配的常量表达式,则执行default后面的语句。 必须为整型或字符型 2a+1 (1=a2) 【例3.5】用switch结构求分段函数b= a2-3 (2=a4) a 其它 正确: switch((int)a) {case 1: b=2*a+1;break; case 2: case 3: b=a*a-3;break; default: b=a; } 错误: switch((int)a) {case a=1a2:…… case a=2a4:.….. default: b=a; } 共用同一个语句组 思考:若省去break语句,情况会怎样? 3.3 循环结构 C语言

文档评论(0)

1亿VIP精品文档

相关文档