双目操作符
双目操作符(运算所需的变量/操作数是两个)又称算数操作符。
*
#include<stdio.h>
int main ()
{
int num=6;
printf("%d\n",num*num;
return 0;
}
/
#include<stdio.h>
int main ()
{
float a = 12/6;//结果为2.0000
float b = 3 /6;//结果为0.0000
printf("%f\n",a);
printf("%f\n",b);
return 0 ;
}
将变量定义为浮点型(float),结果确实会输出浮点型,
但是,在C语言中,整数除法只会返回整数部分,丢弃⼩数部分。
如果希望得到浮点数的结果,两个运算数必须至少有一个浮点数。
示例如下:
#include<stdio.h>
int main ()
{
float b = 3.0/6;//结果为0.5000
printf("%f\n",b);
return 0 ;
}
+和-
#include<stdio.h>
int main()
{
int a =10 , b = 6,c=0,d=0;
c=a+b;
d=a-b;
printf("%d\n",c);
printf("%d\n",d);
return 0 ;
}
%
表示求余运算,即返回两个整数相除的余值
该运算符只能⽤于整数,不能⽤于浮点数
结果正负号由第⼀个运算数的正负号决定
赋值操作符(=)和复合赋值
C语言虽然支持连续赋值,但是代码不易理解。
拆开来写,更易于观察。
连续赋值
c=b=a+3 //;连续赋值,从右向左依次赋值
复合赋值符
在写代码时候,我们经常对一个数进行自增或自减操作。
int a = 6 ;
a+=3; //a=a+3
a-=2; //a=a-2
复合赋值符有许多,例如:+=、-=、*=、/=、%= 等等。
单目操作符
单目操作符(运算所需的变量/操作数是一个)
++
该符号是一种自增操作符,分为前置++和后置++。
前置++
int a =10 ;
int b = ++a ;
printf("a=%d,b=%d\n"a,b);
//前置++就是将变量先加1,再赋值给其他变量
//等同于以下程序
int a =10;
a=a+1;
b=a;
printf("a=%d,b=%d\n"a,b);
//end(a=11,b=11)
后置++
int a =10;
int b = a++;
printf("a=%d,b=%d\n"a,b);
//后置++就是将变量先赋值给另一个变量,变量本身再加1.
//等同于以下程序
int a = 10;
int b = a ;
a = a + 1 ;
printf("a=%d,b=%d\n"a,b);
//end(a=11,b=10)
- -
该符号是一种自减操作符,分为前置- -和后置- -。
前置- -
int a = 10;
int b = --a;
printf("a=%d,b=%d\n"a,b);
//前置--就是先将变量减1,再将结果赋值给另一个变量
//等同于以下程序
int a =10;
a=a-1;
b=a;
printf("a=%d,b=%d\n"a,b);
//end(a=9,b=9)
后置- -
int a =10;
int b = a--;
printf("a=%d,b=%d\n"a,b);
//后置--就是将变量先赋值给另一个变量,变量本身再减1
//等同于以下程序
int a = 10;
int b = a ;
a = a - 1 ;
printf("a=%d,b=%d\n"a,b);
//end(a=9,b=10)
+和-
这里+和-是表示正号和负号
int a = + 10 等价于 int a = 10
int b = - a 等价于int b = - 10
强制类型转换
强制类型转化是一种特殊操作符。
语法形式:
(类型)
int a = 3.14;
// a是int类型,而3.14是float类型
//两边类型不一致,编译器会报警
int a = (int) 3.14;
//将3.14强制转换为int类型,将3.14只取整数部分
分号(;)的作用
分号是C语言中的结束语句。
分号告诉我们当前语句已终止,其后的其他语句是新语句。
分号表示语句的结尾,意即一个分号表示着一句具有完整意义的C语句的完结。
通俗来说,即说完了一件事情,完成了一个操作的C语句。
PS:如有错误,请指正批评!