第三章 C中的运算符

C语言中的运算符是什么

  • C语言中的运算就是对数据进行操作、处理的过程。

运算符是干什么的呢?

  • 运算符就是指该运算符的处理方式。
#include <stdio.h>

int main()
{
    int a, b, c, d;
    double result;
    a = 1;
    b = 2;
    c = 3;
    d = 4;
    result = a*b*c*d;
    printf("%.2f\n",result);
    return 0;
}

C语言基本算术运算符如下表:

名称 
加法运算符      +
减法运算符       -
乘法运算符       *
除法运算符       /
求余运算符 :      %
自增运算符      ++
自减运算符       --

除法运算符中注意

两个整数相除的话,则结果也为整数,小数部分省略。8/3=2
两个数中有一个为小数,结果则为小数。9.0/2=4.500000

取余运算:

该运算只适合用两个整数进行取余运算,10%3=1
运算后的符号取决于被模数的符号(-10)%3=-1;10%(-3)=1

#include <stdio.h>

int main()
{
    int x, y;
    x = 10;
    y = -3;
    printf("x+y=%d\n",x+y);
    printf("x-y=%d\n",x-y);
    printf("x*y=%d\n",x*y);
    printf("x/y=%d\n",x/y);
    printf("x%y=%d\n",x%y);
    return 0;
}

任务
x经过两次加运算结果为2,而每次运算的结果
x = 0;
x = 2;

#include <stdio.h>

int main()
{
    int x =0;
    printf("x=%d\n",x++);
    printf("x=%d\n",++x);
    return 0;

单项练习题
int a = 3; b=4;
计算a+b%(a+b)/a+a*b-b

先计算括号a+b=7、4%7=4、4/3=1
3+1+12-4=12

赋值运算符

问: C预言中的赋值运算符是什么?

答:C预言中的赋值运算符分为简单赋值运算符和复合赋值运算符,复合赋值运算符是在简单赋值运算符”=“之前加上其他运算符构成的:例如+=、-=、*=、/=、%=

  • 注意:符合运算符中的运算符和等号之间是不存在空格。
#include <stdio.h>

int main()
{
    int x = 10;
    int y = 10;
    //使用简单的赋值语句实现乘以2.
    x = x*2;
    //使用复合赋值语句实现Y乘以2.
    y *= 2;
    printf("x=%d\n",x);
    printf("y=%d\n",y);
    return 0;
}

关系运算符

C预言中的关系运算符

>      大于
>=     大于等于
<      小于
<=     小于等于
==     测试等
!=     不等于
#include <stdio.h>

int main()
{
    int a = 10;
    int b = 4;
    printf("%d\n",a>b);
    printf("%d\n",a==b);

    return 0;
}

关系表达式的值是真和假,在C程序中用整数1和0表示

#include <stdio.h>

int main()
{
    int x = 5;
    int y = 5;
    int z = 10;

    printf("x是否大于y:%d\n",x>y);
    printf("y是否大于等于x:%d\n",y>=x);
    printf("y是否小于z:%d\n",y<z);
    printf("z是否小于等于x:%d\n",z<=x);
    printf("z是否等于x+y:%d\n",z==x+y);

    return 0;
}

逻辑运算符

符号      意义
&&       逻辑与
||       逻辑或
!        逻辑非

逻辑运算符的结果用真和假来表示,C语言中用整型的1和0表示
1)与运算(&&)
参与运算的两个变量都为真时,结果才为真,否则为假
2)或运算(| |)
参与运算的两个变量只要有一个为真,结果就为真,两个变量都为假时,结果为假
3)非运算(!)
参与运算的变量为真时,结果为假,参与运算的变量为假时,结果为真。

#include <stdio.h>

int main()
{
    int height = 175;
    double money = 1500000;
    printf("是否符合条件:%d\n",height>=180&&money >= 1000000);
    return 0;
}

三目运算符

C语言中的三目运算符:  ? :

表达式1 ? 表达式2 :表达式3

执行过程:
先判断表达式1的值是否为真,如果是真的话执行表达式2,否则就执行表达式

#include <stdio.h>

int main()
{
    int money =100;//定义我们能接受该商品的心理价位
    int price =120;//定义该商品的单价

    //输出y,我们就买,输出n,我们就不买
    printf("我们买还是不买呢?");
    printf("%c\n",price <= money? 'y':'n');
    return 0;
#include <stdio.h>

int main()
{
    double money = 12.f;
    double cost = 11.5f;

    printf("小编能不能打车回家呢:");
    printf("%c\n",cost <=money? 'y':'n');
    return 0;
}

运算符大比拼之优先级比较

优先级是什么?

优先级就是在运算中的先后顺序。

优先级      运算符           符号
1          括号            ()
2         单目运算符         *  
3                          *  /  %
4         算术运算符         + -
5         关系运算符       > >= < <=
6          ==  !=        
7         逻辑与            &&
8         逻辑或            ||
9         三目运算符         ?  :
10 = += -= *= /= %=
int a = 11;
int b =(a>3)*a-(a+3)%3;
printf("b=%d\n",b);

a>3是真的 1      1*a =11
11 - 14%3  =  11-2  =9
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值