首页 > IT职业 > IT图书 > C语言入门课程第三天:运算符及其运算。
1.C语言中,运算符的作用是指定运算的处理方式,具体有以下五种:
算术运算符、赋值运算符、关系运算符、逻辑运算符、 三目运算符等5种。
2.算术运算符:包含+、-、*(乘法运算符)、/、%(求余运算符、也称模运算符)、++(自增运算符)、--(自减运算符)
1)除法运算中注意:如果相除的两个数都是整数的话,则结果也为整数,小数部分省略,如9/2 =4;而两数中有一个为小数,结果则为小数,如:9.0/2 = 4.500000。
2)取余运算中注意:该运算只适合用两个整数进行取余运算,如:10%3 = 1;而10.0%3则是错误的;运算后的符号取决于被模数的符号,如(-10)%3 = -1;而10%(-3) = 1。
算法例子:
#include
int main()
{
int x,y;
x = 10;
y = -3;
printf("x+y=%dn", 7 );
printf("x-y=%dn", 13 );
printf("x*y=%dn", -30 );
printf("x/y=%dn", -3 );
printf("x%y=%dn", 1 );
return 0;
} 输出结果:x+y=7 x-y=13 x*y=-30 x/y=-3 x%y=1
自增与自减运算符:自增运算符为“++”,其功能是使变量的值自增1;自减运算符为“--”,其功能是使变量值自减1。它们经常使用在循环中。自增自减运算符有以下两种形式:
1.++(或--)变量:先运算再取值,即变量先自增(或自减)1后再取值
2.变量++(或--):先取值再运算,即变量先取值后再自增(或自减)1
注意:无论是a++还是++a都等同于a=a+1,在表达式执行完毕后a的值都自增了1,无论是a--还是--a都等同于a=a-1,在表达式执行完毕后a的值都自减少1。
例子:
#include
int main()
{
int a=100;
printf("%dn",a++);
printf("%dn",++a);
printf("%dn",--a);
printf("%dn",a--);
printf("%dn",a+1);//取值改变,但变量的值并不改变
printf("%dn",a);
return 0;
} 输出结果为:100、102、101、101、101、100
3.赋值运算符:分简单赋值运算符、复合赋值运算符两种
简单运算符就是“=”
复合运算符:复合赋值运算符就是在简单赋值符“=”之前加上其它运算符构成,例如+=、-=、*=、/=、%=。例子:a+=5,意思是a=a+5,即将a与5相加后再赋值给a。
注:复合运算符中运算符和等号间没有空格
例子:
#include
int main()
{
int x = 10;
int y = 10;
x = x*2;//使用简单赋值语句实现x乘以2。
y *= 2;//使用复合赋值语句实现y乘以2。
printf("x=%dn", x);
printf("y=%dn", y);
return 0;
} 输出结果为x=20,y=20
4.关系运算符:含>、>=、 关系表达式的值是“真”还是“假”,在C程序用整数1和0表示。如:
int a = 10;
int b = 4;
printf("%dn",a>b);//输出1
printf("%dn",a==b);//输出0 输出结果:1,0
注意:>=, 例子:
#include
int main()
{
int x = 5;
int y = 5;
int z = 10;
printf("x是否大于y:%dn", x>y); //x是否大于y
printf("y是否大于等于x:%dn", y >= x); //y是否大于等于x
printf("y是否小于z:%dn", y 输出结果:x是否大于y:0 y是否大于等于x:1 y是否小于z:1 z是否小于等于x:0 z是否等于x+y:1
5.逻辑运算符:计算机看不懂7 1) 与运算(&&):参与运算的两个变量都为真时,结果才为真,否则为假。例如:5>=5 && 7>5 ,运算结果为真; 2) 或运算(||):参与运算的两个变量只要有一个为真,结果就为真。 两个量都为假时,结果为假。例如:5>=5||5>8,运算结果为真; 3) 非运算(!):参与运算的变量为真时,结果为假;参与运算量为假时,结果为真。例如:!(5>8),运算结果为真。 输出结果:是否符合条件:0 6.三目运算符(三元运算符):我们购物的时候经常会说如果这个物品大于多少钱就不买了,条件就是大于多少钱,结果就是不买了。这用C语言表示出来就需要用到三目运算符(?:)。 输出结果:y 7.运算符间的优先级:如图!
例子:#include
其格式为:表达式1?表达式2:表达式3;
执行过程:先判断表达式1的值是否为真,如果是真的话执行表达式2;如果是假的话执行表达式3。
例子:#include 
标号代表优先级1最高10最低。
总结:与小学运算法则基本相同。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2387/viewspace-2799162/ ,如需转载,请注明出处,否则将追究法律责任。