一、分支语句(选择语句)
1、if型(由if和else组成)
示例
int main()
{
int a = 10;
int b = 0;
if (a > b)
printf("a比b大\n");
else
printf("b比a大\n");
return 0;
}
if函数的基础结构为
if(表达式)
语句1;
else//非必须
语句2;
在计算机中,用1和0表示真和假。
如果表达式结果为真,就运行语句1,反之则运行语句2.
要点1:if和else只能控制一条语句,如果想要运行多条语句,应使用大括号。
int main()
{
int a = 5;
int b = 9;
if (a > b)
{printf("a比b大\n");
printf("结束\n");}
else
printf("b比a大\n");
return 0;
要点2:在表达式想应用多个条件时,要用&&(和)或者||(或)
int main()
{
int age = 48;
if (18 < age < 40)
printf("青年\n");
else
printf("中年\n");
return 0;}
想要的结果为“中年”,实际输出为“青年”
计算机在判断(18<age<40)时,先判断"18<age"
结果为真,输出1,表达式变为"1<40",结果为真,输出1,于是运行语句1.
为了到达我们想要的结果,应将表达式变为
int main()
{
int age = 48;
if (18 < age && age < 40)
printf("青年\n");
else
printf("中年\n");
return 0;
}
要点3:else默认配对最近的if,若想要更改,应使用大括号。
2.switch型(由switch和case组成)
示例
int main()
{
int day = 0;
scanf("%d", &day);
switch (day)
{
case 1:
printf("星期一\n");
break;
case 2:
printf("星期二\n");
break;
case 3:
printf("星期三\n");
break;
case 4:
printf("星期四\n");
break;
case 5:
printf("星期五\n");
break;
case 6:
printf("星期六\n");
break;
case 7:
printf("星期天\n");
break;
default:
printf("输入错误!\n");
break;
}
return 0;
}
switch函数的基本结构为
switch(整形表达式)
{语句项}
语句项结构为
case 整形常量表达式:
语句
switch函数的逻辑为
取switch后的整形表达式,在语句项中找到与其对应的常量,然后从此处开始运行。
break的用处为跳出
在switch中,case为入口,若没有break,将会从入口开始向下运行到函数结束。
所以我们需要break来跳出函数。
break非必须,如果在逻辑上可行,break可以省略。
switch函数可以镶套使用
二、循环语句
1、while循环
示例
void main()
{
int exp = 0;
while (exp < 300)
{
printf("击杀怪物x1:目前经验值为%d\n", exp);
exp++;
}
if (exp == 300)
{
printf("level up\n");
}
}
while函数基本结构
while(表达式)
循环语句;
当表达式为真时,进入循环;当表达式为假时,结束循环。
break和contine
break用于永久的结束循环,contine用于结束当前循环,进行下次循环。
int main()
{
int a = 0;
while (a <= 10)
{
printf("%d ", a);
a++;
if (a == 5)
break;
}
return 0;
}
输出结果为0 1 2 3 4
int main()
{
int a = 0;
while (a <= 10)
{
a++;
if (a == 5)
continue;
printf("%d ", a);
}
return 0;
}
输出结果为1 2 3 4 6 7 8 9 10 11
2、for循环
示例
int main()
{
int a = 0;
for (a = 1; a <= 10; a++)
{
printf("%d ", a);
}
return 0;
}
输出结果为1 2 3 4 5 6 7 8 9 10
for循环基本结构
for(表达式1;表达式2;表达式3)
循环语句;
其中,表达式1为对变量的初始化;
表达式2为对变量的判断;
表达式3为对变量的调整;
不可在for循环的循环体内修改循环变量,可能导致循环失控。
for循环中,break和contine的用处与while循环相同
3、do while循环
示例
int main()
{
int a = 0;
do
{
printf("%d", a);
a++;
} while (a < 10);
return 0;
}
基本结构
do
{
循环语句
}while(表达式)
do while循环的特点是先运行语句再就行判断,所以循环语句至少运行一次。
其余和while循环基本相同