您的位置:首页 > 编程语言 > C语言/C++

C语言的基本运算

2016-02-16 21:43 736 查看
算术运算

+ - * / %

#include<stdio.h>

int main(){

int a=4;

int b=3;

printf("a+b=%d\n",a+b);

printf("a-b=%d\n",a-b);

printf("a*b=%d\n",a*b);

printf("a/b=%f\n",(float)a/b);

printf("a%%b=%d\n",a%b);

return 0;

}

[/code]

注意:

1.%是占位符,取余操作如果%按原样输出,需要输入%%.

2.取余操作只能是整数.

3.高精度向低精度转换会丢失精度.

低精度向高精度转换会自动提升精度.

4.运算优先级是从左到右 *=/=%>+=-

5.运算时两个数据精度不一样,会自动类型转换,且是低精度向高精度转换

6.同精度运算只能得到同精度的结果,如果需要提高精度,需要强制类型转换

#include<stdio.h>

int main(){

double a=2/3;   //先算2/3=0,再转换     结果是0.000000

printf("%f\n",a);

}

[/code]

#include<stdio.h>

int main(){

double a=(double)2/3; //结果是0.666667

printf("%f\n",a);

}

[/code]

赋值及自增自减运算

赋值运算符 "="

加等于运算 "+="

减等于运算 "-="

自增运算符 "++"

自减运算符 "--"

变量才能自我变化,自增或自减,但常量不能.

++a; a的值+1,表达式的值+1

a++; a的值+1,表达式的值不变

--a; a的值-1,表达式的值-1

a--; a的值-1,表达式的值不变

关系运算

"==" ">" "<" ">=" "<=" "!="

特点:

关系运算符运算结果是一个int值 0或1

">" "<" ">=" "<=" 优先级相等 "==" "!=" 优先级相等

逻辑运算

"| |" 或 "&&"与(且) "!"非

"| |" 或:一真为真

"&&"与:同真为真

"!"非:真假调换

所有数据都有真假值,0为假,其他的数都为真(规定)

如果| |左边表达式已经为真,则右边不执行,而&&只要左边为假,右边不执行.

#include<stdio.h>

int main(){

int a=2;

int b=1<2||a++;

printf("a=%d,b=%d\n",a,b);     //运行结果 a=2,b=1;

int c=1>2&&a++;

printf("a=%d,c=%d\n",a,c);     //运行结果 a=2,c=0;

return 0;

}

[/code]

优先级顺序 ( )> - > ! >算术运算符 >关系运算符 >&& >| |

三目运算符

有三个部分参与运算

<真假判断表达式>?<表达式1>:<表达式2>;

三目运算符可以简化代码

特点:

1.必须有结果,不能定义变量
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: