C语言操作符[算数、赋值、单目]

算术操作符【+ 、-、*、/、%】

+ & -

        分别用来表示加法与减法运算。

#include <stdio.h>

int main()
{
    int a = 10;
    int b = 3;
    //我们在此处定义a,b的值
    int c = a - b;  //此处我们定义一个整数c,并且使得它的值等于a - b,此时答案应该为7
    int d = a + b;  //此处我们定义一个整数d,并且使得它的值等于a + b,此时答案应该为13
    printf("%d %d", c, d);
    return 0;
}

        由上述代码我们可以知道,算数操作符"+"与"-"与数学的加减运算相同。

* & /

        分别用来表示乘法与除法运算。

#include <stdio.h>

int main()
{
    int a = 6;
    int b = 3;
    //我们在此处定义a,b的值
    int c = a * b;  //此处我们定义一个整数c,并且使得它的值等于a * b,此时答案应该为18
    int d = a / b;  //此处我们定义一个整数d,并且使得它的值等于a / b,此时答案应该为2
    printf("%d %d", c, d);
    return 0;
}

        由上述代码我们可以知道,算数操作符"*"与"/"与数学的乘除运算相同。

%[求模运算]

        用来进行求模运算,也可理解为求余数。

#include <stdio.h>

int main()
{
    int a = 6;
    int b = 3;
    int c = 4;
    //我们在此处定义a,b的值
    int d = a % b;  //此处我们定义一个整数d,并且使得它的值等于a % b,此时答案应该为0
    int e = a % c;  //此处我们定义一个整数e,并且使得它的值等于a % c,此时答案应该为2
    printf("%d %d", d, e);
    return 0;
}

        有上述代码我们可以知道,由于6可以被3整除,也就是说6 / 3的余数为0,故6 % 3 = 0,同理,由于6 / 4的余数为2,所以6 % 4 = 2,因此我们可以将求模运算看作是求余数的运算。

赋值操作符

=

        赋值:在变量创建的时候给一个初始值叫初始化,在变量创建好以后,再给一个值,这叫赋值。

#include <stdio.h>

int main()
{
    int a = 100;  //我们在此处初始化一个整数a,使它的值等于100
    a = 200;  //我们在此处使用赋值符号=使得a被赋值为200,也就是说,现在a的值应该等于200
    printf("%d", a);  //我们打印a可以发现,a的值此时为200,即a被成功赋值
    return 0;
}

        并且!赋值操作符=可以实现连续赋值操作。

#include <stdio.h>

int main()
{
    int a = 0;
    int b = 0;
    int c = 0;  //我们首先初始化三个字符a, b ,c
    c = b = a + 3;  //此处为连续赋值操作,从右往左依次进行赋值
    printf("%d %d", c , b);  //此时我们打印c与b的值,得到的结果就都应该为3
    return 0;
}

复合赋值符

        简化自身运算操作。

#include <stdio.h>

int main()
{
    int a = 0;
    a = a + 3;  //当想实现自运算操作时,我们可以使用这样的方法,即完整写出自身 + 3
    a += 3;     //我们还可以使用此类复合赋值符,同样表示自身 + 3,故此时a的值为6
    printf("%d", a);
    return 0;
}

        同样的操作符还有: -= 、*= 、 /= 、 >>= 、 <<= 、 &= 、 |= 、 ^=  

单目操作符

++&--

        前置++:先+1,后使用

#include <stdio.h>

int main()
{
    int a = 10;
    int b = ++a;  //此处为前置++,故应该先给a + 1,再执行赋值操作,即b的值为11
    printf("%d %d", a , b);  //结果都为11
    return 0;  
}

        后置++:先使用,后+1

#include <stdio.h>

int main()
{
    int a = 10;
    int b = a++;  //此处为后置++,故应该先给b赋值,再执行加法操作,即b的值为10
    printf("%d %d", a, b);  //答案为 11 10
    return 0;
}

        前置--:先-1,后使用

        后置--:先使用,后-1

        代码与++类似

+ & -

        表示正负号。

题目小练

        求出a, b, c的值【解析在代码下方,可以自己尝试算一下】

#include <stdio.h>
int main()
{
    int a = 0;
    int b = 0;
    int c = 0;
	a = 6;
	c = a++;
	b = ++a, b++, ++c, a++;
	b += a++ + c;
	printf("a = %d b = %d c = %d\n", a, b, c);
	return 0;
}

答案:a = 10   b = 25   c = 7

解析 

        

#include <stdio.h>
int main()
{
    int a = 0;
    int b = 0;
    int c = 0;
	a = 6;  //在此处a被赋值为6,即此时a = 6
	c = a++;    //此处为后置++,故先使用再+1,此时c = 6 , a = 7
	b = ++a, b++, ++c, a++;      //此处从左往右依次运算,由于 b = ++a为前置++,故先+1,后使用
                                 //依次运算后有a = 9 , b = 9 , c = 7
	b += a++ + c;                //此处为后置++,故先使用,b为复合赋值符,故做自身运算
                                 //得结果为a = 10 , b = 25 , c = 7
	printf("a = %d b = %d c = %d\n", a, b, c);
	return 0;
}

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Tina学编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值