前言: 这篇文章的图片都是采用黑马程序员的课程里面的讲义,之前是跟着黑马老师学习c语言,就借鉴他们整理的资料做进一步的分析。
1、常用运算符分类

2、算术运算符
 代码:
#include <stdio.h>
#include <math.h>
int main(void)
{
int a = 10;
int b = 20;
int C,D,E,F,G,H,I,J,K,L,M;
C=a+b;
D=b-a;
E=a*b;
F=a/b;
G=a%b;
K=++a;
M=--b;
H=pow(a,2);
I=a*(a+b);
printf("C=%d\nD=%d\nE=%d\nF=%d\nG=%d\nH=%d\nI=%d\nK=%d\nM=%d\n",C,D,E,F,G,H,I,K,M);
}
解释: 1、c语言相加减的表达方式和数学一样都是用“+” “-”; 2、C语言的乘法和除用“ * ”,“ / ”。 3、% 这个符号的意思是取余数。 4、当我们想求a的平方的时候我们不能直接a^2,这样的用法是错误的。 在开始我们先导入一个数学库:#include <math.h> 。 接着在使用pow函数:H=pow(a,2); 这就是a的平方使用方法。 5、++a,相当于10+1,而a++相当于9+1,a–和–a,同理。
结果: 
3、赋值运算符
 代码:
#include <stdio.h>
int main (void)
{
int a=10;
int b=20;
int c=30;
int d=40;
int e=33;
int A,B,C,D,E,F;
A = b;
B = a+=2;
C = b-=3;
D = c*=2;
E = d/=2;
F = e%=2;
printf("A = %d\nB = %d\nC = %d\nD = %d\nE = %d\nF = %d\n",A,B,C,D,E,F);
return 0;
}
结果: 
4、比较运算符
C 语言的比较运算中, “真”用数字“1”来表示, “假”用数字“0”来表示。  代码:
#include <stdio.h>
int main (void)
{
int a=10;
int b=20;
printf("%d\n",a==b);
printf("%d\n",a!=b);
printf("%d\n",a<b);
printf("%d\n",a>b);
printf("%d\n",a<=b);
printf("%d\n",a>=b);
return 0;
}
结果: 
5、逻辑运算符
 代码:
#include <stdio.h>
int main (void)
{
int a=0;
int b=1;
printf("%d%d\n",!a,!b);
printf("%d\n",a&&b);
printf("%d\n",a||b);
return 0;
}
结果: 
6、运算符优先级
 
7、运算关系转换
类型转换的原则:占用内存字节数少(值域小)的类型,向占用内存字节数多(值域大)的类型转换,以保证精度不降低。 
|