分支和循环

一、if 语句

1.1 if 语句的语法

     if(表达式),若表达式为真,则继续执行;若为假,则停止。

 if  语句执行流程 

1.2 else 语句的使用

    if(表达式)

        语句;

    else(表达式)

         语句;

    以输出奇数偶数为例子,运用if 语句所写的这个代码。

#include <stdio.h>
int main()
{
    int num = 0;
    scanf("%d",&num);
    if(num%2 == 0)
        printf("%d是偶数\n",num);
    else
        printf("%d是奇数\n",num);
    return 0;
}

1.3 分支中包含多种语句

      以成年可以驾车为例,写一段编码如下:

#include <stdio.h>
int main()
{
    int age = 0;
    scanf("%d\n",&age);
    if(age >= 18)
    {
       printf("成年\n");
       printf("可以驾车\n");
    }
    else
    {
       printf("未成年\n");
       printf("不可以驾车\n");
    }
return 0;
}

     注:若有多种语句需要用{ }将语句包含在其中,{ }又被称为代码块。 

1.4 嵌套式

     在 if 语句中,else可以与另一个 if 语句连用,构成多重判断。

例:输入一个整数,判断是否为0,如不是则判断是正数还是负数。

#include <stdio.h>
int main()
{
    int num = 0;
    scanf("%d",&num);
    if(num == 0)
        printf("输出的数字是0\n");
    else if(num > 0)//if 相当于嵌套在else语句中,形成嵌套模式
        printf("输出的数字是正数\n");
    else
        printf("输出的数字是负数\n");
    return 0;
}
二、关系运算符

      关系运算符有>、<、>=、<=、==、!=.

>:大于运算符

<:小于运算符

>=:大于等于运算符

<=:小于等于运算符

==:相等运算符

!=:不相等运算符

       “=”表示的是赋值,“==”判断是否相等。

#include <stdio.h>
int main()
{
    int a = 0;
    scanf("%d",&a);
    if(a == 3)//判断是否相等,也可以写成(3 == a),若出现错误,编译器会自动报错
       {
          printf("he he\n");
       }
    else
       {
          printf("ha ha\n");
       }
  return 0;
}

     需要注意的是:多个关系符不能连用。

三、条件操作符

      条件操作符也被称为三目操作符,需要接受三个操作数。

     exp1  ?  exp2  :  exp3(?和:都是操作符)

     若exp1结果为真,执行exp2,exp2 的结果是整个表达式结果。

     若exp1结果为假,执行exp3,exp3 的结果是整个表达式结果。

#include <stdio.h>
int main()
{
    int a = 0;
    int b = 0;
    scanf("%d",&a);
    if(a > 5)
        b = 3;
    else
        b = -3;
    printf("%d\n",b);
    return 0;
}

     其中,if 语句用三目操作符可以简化为b = (a>5 ? 3 : -3)

     逗号表达式,从左向右依次计算,整个表达式结果是最后一个表达式的结果。

   int b = 0;
   int c = 4;
   int a = (a=3,a+3,b=c*3,c=2*a+b);
   //a=3,b=12,c=18(最终所算的结果为a=18)
 四、逻辑运算符:&&、||、!

!:逻辑取反运算符(改变单个表达式真假)

&&:与运算符(全真则真,一假为假)

||:或运算符

注:在C语言中,非0表示真,0表示假。

4.1 逻辑取反运算符 !(单目操作符)

        此运算结果只会是1或0.

举例来讲:

#include <stdio.h>
int main()
{
    int flag = 0;
    scanf("%d",&flag);
    if(flag == 0)
    {
        printf("do something\n");
    }
    if(!flag)
    {
        printf("do something\n");
    }
return 0;
}

       在上述例子中,flag 为真,!flag 为假。 

相关推荐

  1. 分支循环语句

    2024-04-14 19:16:01       31 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-14 19:16:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-14 19:16:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-14 19:16:01       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-14 19:16:01       20 阅读

热门阅读

  1. 线程池的参数 以及实现

    2024-04-14 19:16:01       17 阅读
  2. 【接着模拟赛】2024.4.14

    2024-04-14 19:16:01       17 阅读
  3. 239. 滑动窗口最大值

    2024-04-14 19:16:01       15 阅读
  4. win10清华源按装OPENCV和其他软件

    2024-04-14 19:16:01       16 阅读
  5. Csharp_pta2

    2024-04-14 19:16:01       14 阅读
  6. 中文域名有必要注册吗?

    2024-04-14 19:16:01       14 阅读
  7. conda搭建与管理python环境

    2024-04-14 19:16:01       15 阅读
  8. 为什么我们应该切换到Rust

    2024-04-14 19:16:01       13 阅读
  9. 源码安装 clr - hip runtime

    2024-04-14 19:16:01       12 阅读