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()); }
来源:https://blog.csdn.net/weixin_44010678/article/details/98633541