一、选择语句
注:当我们刚开始学习C语言时总是认为需要将其与else联合到一起使用,但这是不对的。if的作用便是,如果if中的内容为真则进行if内的指令。注:C语言中,0为假,其他数为真。
1、if语句
语法:if(条件)
语句;
选择语句if可以对一个指令进行选择,当我们只有一个选择的时候用一个if足矣,但是当我们涉及到了两个以上的选择分支的时候那么一个if显然是不够的,这时候我们就要用到else if。
例:当a<5时b=1;当5<a<10时b=2;当10<a<15时b=3;当15<a<20时b=4
int main()
{
int a = 0;
scanf("%d", & a); //scanf()内不能使用\n
if (a < 5)
printf("b=1\n");
else if (a > 5 && a < 10)
printf("b=2\n");
else if (a > 10 && a < 15)
printf("b=3\n");
else if (a > 15 && a < 20)
printf("b=4\n");
return 0;
}
2、switch语句:switch语句可以用于多种分支的情况,需要用到case。在多种分支下,如果再用else if的话将会显得很麻烦,因为每一种情况都需要用到else if,而且还需要把每一种情况都写下。
例:周一到周五需要上班(workday),但是周六周日可以休息(weekday)
int main()
{
int a = 0;
scanf("%d", &a);
switch (a)
{
case 1: //case后需要用冒号“:”
case 2:
case 3:
case 4:
case 5:
printf("workday\n");
break; //break可以跳出这个选项,如果这种情况没有break,输入一
case 6: 个数的话,将会把后面的选项也输出出来。
case 7:
printf("weekday\n");
break;
}
return 0;
}
二、循环语句
注:在循环中有两个特殊的情况便是:break和continue,break可以跳出循环,continue可以跳过continue后面的代码,直接返回到循环初,从循环初再次循环直到结束
1、while循环
语法:while(表达式)
循环语句
while语句语法简单,但是需要注意一点的是,while语句在continue下可能会变成死循环。
例:输出除5之外的1~10
#include <stdio.h>
int main()
{
int a = 1;
while (a <= 10)
{
if (a == 5)
continue;
printf("%d\n", a);
a++;
}
return 0;
}
这个代码输出的结果是1 2 3 4 ,因为a++在continue的下面就导致当代码运行到continue的时候a==5,返回到循环出,但是由于a++在cuntinue下面导致a++被跳过,所以a只能永远等于5,打印输出的结果也只能到5,但是达不到5,这个循环就变成了死循环。
2、for循环
语法:
for(表达式1;表达式2;表达式3)
循环语句
for循环会高级许多,而且三个表达式距离很近,在我们运用在很长的代码下,不会像while循环一样由于三个表达式距离很远而导致表达有误。而且可以很完美的避开while循环的continue导致的死循环。
例:输出除5之外的1~10
int main()
{
int a = 0;
for (a = 1; a <= 10; a++)
{
if (a == 5)
continue;
printf(" %d", a);
}
return 0;
}