C语言支持三种结构,顺序结构,选择结构,循环结构
if语句
语法结构:
if(表达式)
语句
表达式结果为0,则语句不执行,如果不为0,则语句执行
、
else
语法表达:
if(表达式)
语句1;
else
语句2;
//if语句和else语句默认只能控制一个语句
若要控制多条语句,应用大括号括起来
嵌套if
if else语句中,else可以与另一个联用,构成多重判断
1.
2.
悬空els问题
关系操作符
<,>,<=,>=,==,!=
//如果一个变量和一个常量比较相等,建议将常量放在==的左边
//多个关系操作符不宜联用
X<y<z不行,应用x<y && y<z
条件操作符
也叫三目操作符,需要接受三个操作数的
exp1 ? exp2 : exp3
表达式1
真-----------------------表达式2计算,表达式3不算,表达式2的结果是整个表达式的结果
假-----------------------表达式2不算,表达式3计算,表达式3的结果是整个表达式的结果
逻辑操作符:&&,||,!
!:逻辑取反运算符(改变单个表达式的真假)
&&:与运算符,并且的意思(两侧表达式都为真,则为真,否则为假)
||:或运算符,就是或者的意思(两侧至少有一个表达式为真,则为真,否则为假)
更简便的表示方法
短路
C语言逻辑操作符总是先求左侧再求右侧,如果左侧表达式满足逻辑运算符条件,就不再对右边的表达式求值,即“短路”
if (month >= 3 && month <= 5)左边如果为假,右边就没有必要算了
switch语句
用于判断条件有多个结果的情况
打印除以3的余数
default语句是用来处理switch语句中无法匹配到case语句的情况
While语句
打印1-10
倒序打印一个整数的各位数
for循环
for(表达式1;表达式2;表达式3)
语句;
三个表达式分别控制初始化,判断,调整部分
计算1~100之间3的倍数的数字之和
do while循环
do
语句;
while(表达式)
//循环体至少进行一次
//打印1~10之间的数字
//输入一个正整数,计算这个整数是几位数
///continue的作用是执行时跳过本次循环continue后面的代码,直接去判断部分
循环中用了其他循环叫循环的嵌套
//找出100~200之间的素数
goto语句可以实现在同一个语句中跳转到设置好的标记处
//goto语句的使用不当会打乱代码执行流程
//在多层嵌套中跳出使用goto语句会很方便
随机数生成
rand可以生成随机数
Int rand(viod)
srand是用来初始化随机数的生成器
void srand (unsigned int seed);
time可以获取时间
time函数返回的是一个时间戳
time_t time (time_t* timer)
随机数的生成方式
1.rand函数生成随机值(0~32767)
2.在rand函数使用之前,现需要调用srand设置随机数生成的基准值
可以使用time函数的返回值,做基准值
注意:在一次程序运行中,只需要设置一次基准值就行,后面可以多次生成随机值