流程控制(1)【重点】

1.什么是流程控制?

                                程序代码执行的顺序

2.流程控制的分类

①顺序执行

②选择执行

定义:某些代码可能执行,也可能不执行,有选择的执行某些代码

分类:

                if:

                        1.  if最简单的用法

                         格式:               if(表达式)

                                                        语句;

                        功能:        如果表达式为真,执行语句;如果表达式为假,语句不执行

                        2.  if的范围问题

 上述输出为bbbb,说明下面一个printf不是属于if范围内的。

        1.        if(表达式)

                        语句A;

                        语句B;

        解释: if只能控制语句A的执行与不执行;无法控制语句B的执行与不执行。或者说,语句B一定会执行

        2.        if(表达式)

                        { 

                                语句A;

                                语句B;

                                                }

此时,语句A和语句B均可以执行。

由此可见:if默认只能控制一个语句的执行或者不执行;如果想控制多个语句的执行或不执行就必须把这些语句用{}括起来。

例如:

                        3.  if...else...的用法

 因为VC++只能识别出后缀为.c或者.cpp的文件,之前命名的时候没有加会自动加,但命名上面文件名中包含了.,就会自动认为这个点就是文件类型。

解决方法:在文件名后加上.c或者.cpp

 下面的printf语句不属于if...else中,输出结果为aaaa和cccc。

                        4.  if...else   if...else...的用法

 

 一定要理解该程序为何出错。

                        5.  C语言对真假的处理

                                非零为真,零就是假;真用1表示,假用0表示

                        6.  if举例——求分数的等级

注意::

        *90 <= score <= 100无法达到判断score是否在90-100之间的功能
                为什么?
                        这个式子永远为真,会先执行左边。 判断90是否小于score,无论是真还是假,结果不是1就是0。再执行右边,1和0一定小于100,这个逻辑表达式一定为真
        写成:score >= 90 && score <= 100

                        7.  if的常见问题解析

               1)互换两个数字

# include<stdio.h>

int main(void)
{
    int i = 3;
    int j = 4;

    int t;//定义临时变量

    t = i;
    i = j;
    j = t;
    //完成i和j的互换
    printf("i = %d,j = %d\n",i,j);

    return 0;
}

                    2)对任意三个数字进行排序

# include<stdio.h>

int main(void)
{
    int a,b,c;
    int t;
    printf("请输入三个整数:");
    scanf("%d %d %d",&a,&b,&c);
    //编码完成a是最大值,b是中间值,c是最小值
    if(a < b)
    {
        t = a;
        a = b;
        b = t;
    }
    if(a < c)
    {
        t = a;
        a = c;
        c = t;
    }
    if(b < c)
    {
        t = b;
        b = c;
        c = t;
    }

    printf("%d %d %d\n",a,b,c);

    return 0;
}

③循环执行

利用流程控制可以解决所有的问题!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值