If结构
If分支结构
程序设计有三种结构,顺序结构,分支结构,循环结构,If为分支结构
If-else分支结构
格式:if(表达式1){
printf(语句块1)
}else{
printf(语句块2)
}
含义:如果表达式的结果为真,则执行语句块1;否则,执行语句r
If-else多分支结构
条件:在大区间中若多个子区间是连续的,那么就可以用If-else进行优化。
(注意:条件一定只能放在if的后面,不能放在else的后面!)
格式:if(表达式1){
printf(语句块1)
} else if (表达式2){
printf(语句块2)
........................
} else if (表达式n){
printf (语句块n)
}
含义:如果表达式1的结果为真,则执行语句块1;否则,如果表达式2的结果为真,则执行语句块2; 否 则,如果表达式3的结果为真,则执行语句块3; 其它情况,执行其它情况的语句块。
switch语句
含义:switch也是一种分支结构,常常用于多分支结构。用以优化If-else多分支结构。
条件:如果条件中都是等值判断,建议使用switch。
例.输入数字1-7,打印出“今天是星期...”
break的含义:case匹配成功,对应语句块执行完成后会跳出switch。
注意:<1> switch语句中应该在每个选项的最后都添加 break ;
<2>break的实际效果是把语句列表划分为不同的部分;
<3>switch-case结构中声明局部变量要在每个case下加一个大括号(在vs下,gcc下不需要)
default子句: 若表达式与上面所有的常量都不匹配,就会被归入default,意思为其他情况。
例.输入1-5时,打印“今天是工作日”,输入6-7时,打印“今天是休息日”。
goto语句
功能:跳到指定标签去运行,实现一个类似于while的循环语句的功能
注意:标签必须在函数的内部,不能重复
while循环结构
功能:将相同的代码重复多次
结构:while(循环条件){
//循环体
}
三要素:<1>循环条件 <2>循环体 <3>更新循环变量
死循环:循环条件为1
石头剪刀布游戏
<1>电脑随机出拳,使用rand()函数,srand()函数进行随机播种
<2>用户出拳通过键盘输入(0 石头 1剪刀 2 布)
<3>五局三胜,最终判定输赢
结果打印格式如下:电脑赢3局,用户赢两局,电脑胜
Tips.使用随机函数rand()生成随机数
<1>引入头文件
#include<stdlib.h>
<2>为什么每次生成的随机数都是一样的
随机数是一个正态分布函数,产生随机数时,会有一个种子(电脑开机之后就会产生)
若想真的产生随机数,就必须重新播种,使用srand()重新播种,需引入头文件:
#include<time.h> (读取当前时间进行播种)
计算税收
出租车计价收费