三种基本结构

image.png

4.1选择结构


image.png

1.单行格式的 if 语句

image.png

示例:

  1. if (a>600)
  2. {
  3. cout <<"我考上了大学"<<endl;
  4. }

注意:if判断语句后,不加分号

2.多行格式的if语句

image.png
image.png

3.多条件的if语句

image.pngimage.png

4.嵌套的if语句

image.png

5.三目运算符

image.png

image.png

image.png

6.switch语句

image.png

image.png

image.png


4.2循环结构

1.循环语句

(1)while循环语句

语法:while(循环条件){循环语句}
image.png
犯错
image.png
微信截图_20210108202243.png
更正
微信截图_20210108202917.png

案例

image.png

image.pngimage.png

image.png

知识点:随机数的生成

rand()%100 生成 0~99 的随机数
rand()%100+1 生成 1~100 的随机数
rand()%a+b 生成 b 到 ( a+b-1 ) 的随机数
产生一定范围随机数的通用表示公式是:

  • 取得 [0,x) 的随机整数:rand()%x;
  • 取得 [a,b) 的随机整数:rand()%(b-a)+a;
  • 取得 [a,b] 的随机整数:rand()%(b-a+1)+a;
  • 取得 (a,b] 的随机整数:rand()%(b-a)+a+1;
  • 取得 0-1 之间的浮点数:rand()/double(RAND_MAX)。

image.png

image.png

(2)do…while语句


image.png
image.png

案例 水仙花数

image.png
image.png
image.png
image.png

(3)for循环语句

语法:for(起始表达式;条件表达式;末尾循环体) {循环语句;}

  1. int main()
  2. {
  3. for ( int i =0; i <10; i++)
  4. {
  5. cout << i << endl;
  6. }
  7. system( "pause" ) ;
  8. return 0;
  9. }

注意事项
image.png

for循环的执行顺序
image.png
for循环括号内的东西可不写

image.png

案例 敲桌子

image.pngimage.pngimage.png

(4)嵌套循环image.pngimage.png

案例image.png

image.pngimage.png


2.跳转语句

(1)break语句

image.png

(2)continue语句

image.pngimage.png

(3)goto语句

image.png
image.png
image.png
goto 语句作用域只在当前函数中

(4)return 语句

return 语句会中止执行当前函数,跳转回到调用该函数的位置:
return [表达式];

这里的表达式会被计算,且结果会被传送给函数调用者,当作被调用函数的返回值。如有必要,返回值会被转换到被调用函数的返回值类型。

一个函数内可以有任意多个 return 语句:

  1. return ( a < b ? a : b );
  2. // 返回两个整数类型参数中的较小值
  3. int min( int a, int b )
  4. {
  5. if ( a < b ) return a;
  6. else return b;
  7. }

该函数体内的 if else 语句可以用下面这一条语句来替代:

  1. return ( a < b ? a : b );

括号不会影响 return 语句的执行行为。然而,复杂的 return 表达式常常被放在括号内,以提高代码的可阅读性。

不带任何表达式的 return 语句仅能在类型为 void 的函数中使用。事实上,这样的函数也根本不需要 return 语句。如果在函数内没有 return 语句,程序流会在函数块尾部结束,然后返回到调用该函数的地方。