一、算数运算符
1、+加法运算符,-减法运算符,/除法运算符,*乘法运算符,%取余用代码演示在计算机的实际关系,
#include<stdio.h>
int main()
{
int a = 8, b = 6;
int c;
float e = 8.0, f = 6.0;
float d;
c = a + b;
printf("c=%d\n", c);
c = a - b;
printf("c=%d\n", c);
c = a * b;
printf("c=%d\n", c);
c = a / b;
printf("c=%d\n", c);
d = e / f;
printf("d=%f\n", d);
c = a % b;
printf("c=%d\n", c);
return 0;
}
二、逻辑运算符
1、逻辑与&&
碰0就截止程序如下
#include<stdio.h>
int main()
{
int a = 9, b = 8;
if (a - 1 > b&&b++)
printf("ture\n");
else
printf("false\n");
printf("a=%d\n", a);
printf("b=%d\n", b);
return 0;
}
此程序的运行为
(a-1)>b为0所以后面的逻辑就不会运算了
2、逻辑或||
遇到1就停止程序如下
#include<stdio.h>
int main()
{
int a = 9, b = 10;
if (a + 2 > b || a++)
printf("ture\n");
else
printf("false\n");
printf("%d\n", a);
printf("%d\n", b);
return 0;
}
没有运行a++
3、逻辑非
输出的相反值程序如下
#include<stdio.h>
int main()
{
if (!0)
printf("ture\n");
else
printf("false\n");
return 0;
}
输出结果为ture。
4、按位与
运算代码如下
#include<stdio.h>
int main()
{
int a = 0x11;//0001 0001
int b = 0x12;//000100010
int c = 0;
c = a & b;
printf("%#x", c);
return 0;
}
运算的结果为0x10
5、按位或
运行代码如下
int main()
{
int a = 0x11;//0001 0001
int b = 0x12;//000100010
int c = 0;
c = a | b;
printf("%#x", c);
return 0;
}
运行为0x13。
6、按位取反~
代码如下
#include<stdio.h>
int main()
{
int a = 0x11;//0001 0001
int b = 0x12;//000100010
int c = 0;
c = ~a ;
printf("%#x", c);
return 0;
a的数值为0xee,
7、按位异或
相同为假不同为真代码如下
#include<stdio.h>
int main()
{
int a = 0x11;//0001 0001
int b = 0x12;//000100010
int c = 0;
c = a^b ;
printf("%#x", c);
return 0;
数值为0x3;
8、左右位移逻辑
#include<stdio.h>
int main()
{
int a = 0x12;
int c,d;
c = a<<3;
d = a >> 2;
printf("%#x\n",c);
printf("%#x\n", d);
return 0;
}
c的数值为0x90,d的数值为04