运算符

China☆狼群 提交于 2019-11-25 19:47:26

C语言运算符

C语言提供了以下类型的运算符:
算术运算符
关系运算符
逻辑运算符
位运算符
赋值运算符
杂项运算符

运算符优先级


几点说明
1、赋值运算符的结合性:右结合,a=b=3,先计算b=3,在计算a=(b=3)
2、自增运算符只能在自身的基础上自增,(a+1)++是不合法的

类型转化

自动类型转化不同类型数据运算时:结果的类型是取值范围大的那一种类型。 比如:float+int=float+float
强制类型转化:一般格式为**(类型)表达式**

rand()随机函数

rand()函数是按指定的顺序来产生整数,因此每次执行上面的语句都打印相同的两个值,所以说C语言的随机并不是真正意义上的随机,有时候也叫伪随机数,使用 rand() 生成随机数之前需要用随机发生器的初始化函数srand(unsigned seed)(也位于 stdlib.h 中) 进行伪随机数序列初始化,seed 又叫随机种子,通俗讲就是,如果每次提供的 seed 是一样的话,最后每一轮生成的几个随机值也都是一样的,因此叫伪随机数,所以需要每次提供不同的 seed 达到完全的随机,我们通常用时间函数 time(NULL) 作为 seed ,因为时间值每秒都不同,这个函数需要包含以下头文件:

#include <time.h> 

比如:

#include<stdio.h> #include<stdlib.h> #include<time.h> int main() { 	srand(1); 	printf("%d",rand()); }  

无论运行多少次,结果都依然是41不变。
如果加上time(NULL)就会变了

#include<stdio.h> #include<stdlib.h> #include<time.h> int main() { 	srand(time(NULL)); 	printf("%d",rand()); }  
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!