条件语句有:if,switch
其中,写代码时if只有两个分枝可供选择,而大多数情况下我们需要多分支的选择,因此可以使用switch语句处理多分枝选择的情况。当然,你也可以用if的嵌套式语句,但这种方式的代码层数较多,程序繁杂,所以不推荐。
if语句中,首先判断表达式的值,然后根据该值的情况控制程序流程。表达式的值不等于0,即为真;否则为假。if语句有if,if--else和else if 三种形式
例一(if):
1 if(表达式) 语句
2
例二(if--else):
if(表达式)
{
语句块1;
}
else
{
语句块2;
}
例三(else if ):
if(表达式1) 语句1
else if(表达式2) 语句2
····
else if(表达式n—1) 语句n-1
else 语句n
switch语句中表达式的结果必须为整数,default关键字的作用是:如果没有符合条件的情况,那么执行default后的默认情况语句,default可以省略。
switch(表达式)
{
case:1
语句块;break;
case:2
语句块;break;
......
case:n
语句块;break;
default:
默认情况语句块;break;
}
循环语句有:for,while,do-while
循环语句是反复执行某段程序的流程结构,被反复执行的程序被称为循环体。循环其实就是重复的做一件事,在这个同时我们还要规定循环的次数(就是重复做多少遍)。
for循环:
这种循环应该是用的最多的
for循环结构:
for(初始化表达式 ; 循环控制语句 ; 增值表达式)
{
语句序列
}
通俗的讲就是这样的:
for(从几开始数 ;继续循环的条件 ;数增加或减少)
{
我们重复干的事
}
例子:
int n=10; // 规定循环多少次
for(int i=0;i<n;i++)
{
printf("重复做的事\n");
}
while循环:
while循环其实和for循环差不多,只不过是把初始化条件写到外面了,把增值表达式写到里面了。
一般来说用 while循环用于倒数或者不清楚循环次数的遍历。
while循环结构:
while(循环控制表达式)
{
语句序列
}
例子:
int n=10;
while(n>0)
{
printf("重复做的事\n");
n--;
}
do-while循环:
while循环执行循环体前都会先判断下(执行循环控制表达式),而do-while循环会在执行循环控制表达式前先执行一遍循环体(这第一遍循环体是不进行判断的,直接执行)
do-while循环结构:
do
{
语句序列
}while(循环控制表达式);
例子:
int n=10;
do
{
printf("此时的n=%d\n",n);
n--;
}while(n>0);
那如果你想在某个地方中断循环或者不想要循环上的某个数据怎么办呢,这时候我们就要用到break和continue了
例子:
没有break和continue
for(int i=1;i<=10;i++) //打印1-10这10个数
{
printf("%d\n",i);
}
运行结果:
有break:
for(int i=1;i<=10;i++)
{
if(i==6)
break;
printf("%d\n",i);
}
运行结果:
有continue:
for(int i=1;i<=10;i++)
{
if(i==6)
continue;
printf("%d\n",i);
}
运行结果: