Day04笔记

程序结构:

结构化程序设计(structured programming)是进行以模块功能和处理过程设计为主的详细设计的基本原则。
它的主要观点是采用自顶向下、逐步求精及模块化的程序设计方法;使用三种基本控制结构构造程序,任何程序都可由顺序、选择、循环三种基本控制结构构造。结构化程序设计主要强调的是程序的易读性。
◦ 顺序结构:默认的流程结构。按照书写顺序从上至下执行每一条语句。
◦ 选择结构:对给定的条件进行判断,再根据判断结果来决定执行哪一段代码。
◦ 循环结构:在给定条件成立的情况下,反复执行某一段代码。
Switch

switch(表达式){
case 常量表达式1:
    语句1;
    break;
case 常量表达式2:
    语句2; ...
    break;
    case 常量表达式n:
    语句n;
    break;
default:
    语句n+1;
    break;
}

◦ 表达式的类型(case语句后的值)必须是整型或可以转变为整型的值 (byte、short、char和int类型)。
case的值1、值2…值n只能为常数或常量,不能为变量。
如果在case后面定义的变量必须加上大括号

switch (10){
      case num:{
          int num = 5;
          printf("num = %d", num);
          break;
      }
      default:
          printf("error\n");
          break;
  }

switch中case后面的表达式的值不能相同
1.拿到条件表达式的返回值(注意返回值必须是整型)
2.利用条件表达式的返回值和switch后面大括号中的每一个case进行比较, 判断条件表达式的返回值和case后面的整数是否相等 条件表达式 == 整数
3.如果条件表达式的返回值等于某一个case后面的整数, 那么就会执行该case后面的语句
4.执行完语句之后如果遇到break就会结束整个switch语句, 也就是说后面的所有语句都不会被执行
5.如果前面的case不满足, 也就是前面的case的整数和条件表达式的返回值不相等就会继续判断后面的case
6.如果前面所有的case都不满足, 就会执行default后面的语句

循环结构
其特点是,在给定条件成立时,反复执行某程序段, 直到条件不成立为止。给定的条件称为循环条件,反复执行的程序段称

while

while ( 条件 )
 {
     语句1;
     语句2;
     ....
 }

如果while中的条件一开始就不成立,那么循环体中的语句永远不会被执行
◦ 累加思想
原理:通过循环的形式进行累加操作,定义变量记录每次变化后的结果
计数器:
原理:通过循环的形式进行计数操作, 通过变量记录每次变化的值
应用场景:当以后 要求在什么什么 中 里面有多少个什么的时候,立刻想到计数器思想
do-while循环
do {
语句1;
语句2;
….
} while ( 条件 );
当执行到do-while循环时,首先会执行一遍循环体中的语句(“循环体”就是do后面大括号{}中的内容)。接着判断while中的条件,如果条件成立,就执行循环体中的语句。然后再次判断条件,重复上述过程,直到条件不成立就结束while循环
当执行到do-while循环时,首先会执行一遍循环体中的语句(“循环体”就是do后面大括号{}中的内容)。接着判断while中的条件,如果条件成立,就执行循环体中的语句。然后再次判断条件,重复上述过程,直到条件不成立就结束while循环
for循环
1.for(初始化表达式;循环条件表达式;循环后的操作表达式)
{
执行语句;
}
2.执行过程:for循环开始时,会先执行初始化表达式,而且在整个循环过程中只执行一次初始化表达式
接着判断循环条件表达式,如果条件成立,就会执行循环体中的语句(“循环体”就是for后面大括号{}中的内容)
循环体执行完毕后,接下来会执行循环后的操作表达式,然后再次判断条件,重复上述过程,直到条件不成立就结束for循环
3. for循环的其他形式
表达式省略(三个表达式都可以省略)
如:for(; ;) 语句相当于while(1) 语句,即不设初值,不判断条件(认为表达式2为真值),循环 变量不增值。无终止地执行循环体。
循环控制无关的任意表达式
表达式1和表达式3可以是一个简单的表达式,也可以是逗号表达式,即包含一个以上的简单表达 式,中间用逗号间隔。

for(sum=0,i=1;i<=100;i++) sum=sum+i;或
for(i=0,j=100;i<=j;i++,j--) k=i+j;

// 表达式1和表达式3都是逗号表达式,各包含两个赋值表达式,即同时设两个初值,使两个变量增值.
循环嵌套
1.循环语句的循环体中存在其他的循环语句就是循环嵌套,称之为循环嵌套
// 外循环控制行数
// 内循环控制列数
尖尖朝上: 修改内循环的 条件表达式
尖尖朝下: 修改内循环的 初始化表达式

 *
 **
 ***
for (int i = 0; i < 3; i++) {
        for (int j = 0; j <= i; j++) {
            printf("*");
        }
        printf("\n");

     ***
     **
     *
for (int i = 0; i < 3; i++) {
        for (int j = i; j < 3; j++) {
            printf("*");
        }
        printf("\n");

break
在多层循环中,一个break语句只向外跳一层
continue
continue语句的作用是跳过循环体中剩余的语句而继续下一次循环

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值