1.算术运算符
+ 求和
- 求差
* 求乘
/ 求商
% 求模运算符。求余数 10/3余数为1
2.算术表达式
简单表示要先定义(例子)
#include<stdio.h>
int main()
{
int num = 10 + 10;//声明int类型,再计算
printf("答案等于%d",num);//最后赋值打印
return 0;
}
3.需要注意:1)/ 除法运算
a.如两个整型的数相除如果存在小数(且我们需要这个小数)应该将一个整数型变为一个double型且在计算时也要变成double型
#include<stdio.h>
int main()
{
double num = 10;//定义成double
int num2 = 4;
double num3 = num / num2;//有小数存在所以也要double型进行赋值
printf ("num3=%lf", num3);
return 0;
}
或这乘以1.0
#include<stdio.h>
int main()
{
int num = 10;//乘以1.0使其变为小数型
int num2 = 4;//
double num3 = num *1.0/ num2;//需要在前面的那一个相乘,
printf ("num3=%lf", num3);//在后面相乘无法执行
return 0;
}
b.如果不变,且继续使用int型则会输出整数。
2)%求模运算
a.可判断一个数的倍数
b.来判断是否能整除
c.不能用小数进行求模运算
d.m%n的余数是在0到(N-1)之间
4.算术表达式结果的类型
a.我们首先要知道算术表达式结果的类型
b.如果参与表达式类型一样,那么算术表达式也是一样的
c.如果算术表达式的操作类型不一致,那么结果用最大范围的
int<float<double
#include<stdio.h>
int main()
{
int num = 10;//
double num2 = 4;//两个不同的类型
double num3 = num / num2;//double型较大所以要使用大的打印
printf ("num3=%lf", num3);
return 0;
}
5.算术优先级
先乘除后加减,如果同级按从左到右的顺序
使用小括号先算小括号
6.char数据
a.字符也可以计算,通过ascll码转换为数字来运算(因为ascll码是数字代换,所以使用整型变量,可转换为数字)
#include<stdio.h>
int main()
{
int num = 10;
char ch = 'a';//ascll码表示97
int f = num + ch;//转换为数字相加
printf("最后答案是%d",f);
return 0;
}
b
b.如果小写转大写则-32,大写装小写+32
#include<stdio.h>
int main()
{
char ch = 'a';//ascll码表示97
char f = ch - 32;//大写转小写需-32
printf("最后答案是%c",f);
return 0;
}
7.复合赋值运算符
含义:如果你想在原数据上更改,可以使用复合赋值运算符
+= 在原来的基础上加一个数
-=
*=
/=
%=
#include<stdio.h>
int main()
{
int num = 2;
printf("%d\n", num);
num += 3;
printf("%d\n", num);
return 0;
}
8.自增和自减
a.前自增表达式++num,后自增表达式num++
b.无论前后自增,都是加1
前自增运算过程++num
表达式先加1,然后打印
后自增num++
表达式先复制,然后加1打印
自减雷同
c.自增自减优先级大于算术优先级