返回

vs基础运算符及算术进阶使用

发布时间:2023-08-18 02:53:37 504

1.算术运算符

+    求和

-     求差

*     求乘

/     求商

%    求模运算符。求余数 10/3余数为1

2.算术表达式

简单表示要先定义(例子)

#include

int main()

{

int num = 10 + 10;//声明int类型,再计算

printf("答案等于%d",num);//最后赋值打印

return 0;

}

3.需要注意:1)/ 除法运算

a.如两个整型的数相除如果存在小数(且我们需要这个小数)应该将一个整数型变为一个double型且在计算时也要变成double型


#include

int main()

{

double num = 10;//定义成double

int num2 = 4;

double num3 = num / num2;//有小数存在所以也要double型进行赋值

printf ("num3=%lf", num3);

return 0;

}

或这乘以1.0

#include

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

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

int main()

{

int num = 10;

char ch = 'a';//ascll码表示97

int f = num + ch;//转换为数字相加

printf("最后答案是%d",f);

return 0;

}
b

b.如果小写转大写则-32,大写装小写+32

#include

int main()

{

char ch = 'a';//ascll码表示97

char f = ch - 32;//大写转小写需-32

printf("最后答案是%c",f);

return 0;

}

7.复合赋值运算符

含义:如果你想在原数据上更改,可以使用复合赋值运算符

+=   在原来的基础上加一个数

-=

*=

/= 

%=



#include

int main()

{

int num = 2;

printf("%d\n", num);

num += 3;

printf("%d\n", num);

return 0;

}

8.自增和自减

a.前自增表达式++num,后自增表达式num++

b.无论前后自增,都是加1

vs基础运算符及算术进阶使用_算术表达式

前自增运算过程++num

表达式先加1,然后打印

后自增num++

表达式先复制,然后加1打印

自减雷同

c.自增自减优先级大于算术优先级

9.逗号运算符

10.比较表达式(不成立为0,成立为非0数)

a.<小于  当两个表达式小于成立则为1,不成立则为0

<=小于等于  成立为1,不成立为0

==相等比   成立为1,不成立为0

!=不等比   成立为1,不成立为0

#include

int main()

{

int num1 = 10, num2 = 20;//进行赋值

int num3=num1 < num2;//比较时注意类型,为整数型

printf("%d\n",num3);//打印

return 0;

}

b.比较运算符的两边可以是变量,常量,表达式

c.char类型

运用ascll码来进行比较

vs基础运算符及算术进阶使用_#include_02

12.逻辑运算符

1).&&   并且  两边都要成立,最后才可以打印。断路:左边的不成立直接停止运行,如果只是右边不成立,那么左边依旧运行


#include

int main()

{

int i = 1;//定义一个整型

int res= i++ <20 && ++i > 50;//利用并且联系

printf("i%d", i);//打印i为3表示在右边断路,前面依旧运行

printf("chenli%d", res);//打印最后是否成立

return 0;

}

2).||       或者   一边成立即可。断路:左边成立,则停止运行。只是右边成立则程序依旧从左到右运行

vs基础运算符及算术进阶使用_算术表达式_03

vs基础运算符及算术进阶使用_#include_04

3).!      取反    真为假,假为真。

vs基础运算符及算术进阶使用_#include_05

优先级       !>&&>||

13.不懂运算符优先级和结合性的可以查看 

vs基础运算符及算术进阶使用_#include_06

vs基础运算符及算术进阶使用_#include_07

补充:三元表达式可以一次将三个值表达出来。

语法:    条件表达式? 值1:值2

如果条件表达式成立则结果值为值1,否则为值2.

三元表达式可以部分代替if-else

注意:条件表达式可以是任意的表达式,0为假,非0为真

值1和值2可以的是表达式,是各自的结果。

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线
下一篇
初学c语言 2023-08-17 23:59:15