C语言DAY05 - 循环控制

随机数
#include<stdlib.h>
//先引入系统头文件
int main()
{
    int randomNum = arc4random_uniform(10)
    //产生一个0-9的随机数,0-->(n-1)的随机数.
    int randomNum2 = arc4random_iniform(11)+10
    //产生一个10-20的随机数
    //(最大数-最小数+1)+最小数
}
switch-case 结构
  • 开发中固定的几个取值判断就用 switch case
语法
switch(表达式)
//先计算 switch后面的表达式的结果
{
//从上到下的将这个结果和每一个 case后面的值进行相等比较判断.
//只要有一个相等,就执行其中的代码,结束整个 switch 结构.
    case 值1:
         执行代码;
         break;
//如果不相等再判断下一个 case 的值
    case 值2:
         执行代码;
         break;
    case 值3:
         执行代码;
         break;
//如果所有的值和表达式的结果都不相等,就执行 default 代码块.
    default
         执行代码;
         break;
}

举例:
int num1 = 0,num2 = 0,count = 0;
printf("输入两个数字");
scanf("%d%d",&num1,&num2);
printf("0加1减2乘3除")
scnaf("%d",&count);
switch(count)
    case 0:
    printf("结果是%d",num1+num2);
    break;
    case 1:
    printf("结果是%d",num1-num2);
    break;
    case 2:
    printf("结果是%d",num1*num2);
    break;
    case 3:
    printf("结果是%d",num1/num2);
    break;
    default:
    printf("输入有误");
    break;
  • 注意

    1. switch小括弧可以写表达式,也可以写变量,甚至是常亮.除了实型
    2. 一般不希望穿透,一般都会写 break.
    3. 表达式可以用隐性转换来扩大 case 值的包含范围(score/10)score 就是小数点向左移一位取整.
    4. 小数在内存当中存的是无限接近他的数,做相等比较的时候就可能出错.
    5. case块可以写任意行代码,只要符合逻辑.也可以加大括号,但一般都不加.
    6. 如果case 块中要声明变量,必须加大括号.其他的 case 中也访问不了这个变量
    7. case 块可以有任意个,default 可以省略.
    8. case 后面不能写变量.
  • case 穿透

    1. break 代表立即结束整个 switch-case 结构
    2. break 语法上可以不写
    3. 不写就会穿透到下一个 case 中执行,直到遇到 break.
    4. 如果多个 case 块的处理逻辑是一样的,我们就可以用 case 穿透来简写代码.

    switch(month)
    {
    case 1:
    case 2:
    case 3:
    printf(“春天来了,万物复苏\n”);
    break;
    //最后一个 case 可以不写 break,穿透也是穿出去了.
    }

  • switch case 与 if

  1. 能够用 switch - case 写出的都可以用 if 结构写.反过来不行
  2. switch 只能等值判断,不能直接做范围判断.
  3. switch 是比 if 多一个选择,代码更简洁

> 4. 等值判断建议实用 switch,范围判断实用 if.

程序的调试
  • 99.99%的 BUG 都是因为变量的值没有按照我们预想的那样变化.
  • 查找替换 command + F 上面写原来内容,下面写改成什么
循环结构
  • C 语言又三种循环结构
    1. while
    2. do while
    3. for
无论那种都是将同一段代码反复执行
while
  • 语法

    //先判断条件真假,如果为真就执行循环体
    while(条件表达式)
    //可以是任意表达式,0为假,非0为真
    {
    循环体;
    }
    //循环体执行完跳过去判断循环体真假,如果为假,立即结束

  • 每次判断条件得到的都是真,循环体会反复不停一只执行,就叫做死循环

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值