c语言操作符

基础的除和取余

#include "stdio.h"
int main()
{int a=3;
int b=4;
int c=a%b;
int d=a/b;
float e=a/b;
	printf("%d   %d     %lf\n",c,d,e);
}

3   0     0.000000
Press any key to continue

右移操作符和左移操作符

#include "stdio.h"
int main()
{int a=3;
int b=a<<1;
int c=a>>1;

printf("%d %d",b,c);
}

6 1Press any key to continue

为什么会输出6和1呢因为这是16进制的算法

3是011 而左移和右移分别是 110 和001 所以就是6和1

右移分为算术移位和逻辑移位 逻辑要补原符号位,而算术不要

左移是左边丢弃,右边补零

按位取反

#include <stdio.h>//不通过另一个变量,交换ab位置
int main()
{
	int a=3;
	int b=4;
	a=a^b;
	b=a^b;
	a=a^b;
	a=~a;
	printf("%d %d",a,b);
}

交换位置之后按位取反a,得出答案-5,这是为什么呢?

按位取反是32位2进制取反,而取的反是补码,%d输出是原码,所以还要化出原码。

#include "stdio.h"
int main()
{int a=1;
int b=2;
	int c=(a>b,a+b,a*b);//输出最后的值
	printf("%d",c);}
2Press any key to continue

逗号运算输出最后一个算术的结果

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值