前言
- 概况一下该部分内容的重要知识点和易错点
语句
- 表达式语句
- 函数调用语句
- 控制语句
- 复合语句
- 空语句
控制语句
-
1.条件判断语句也叫分支语句:
- if语句
- switch语句
-
2.循环执行语句:
- while语句
- for语句
- do while语句
-
3.转向语句
- break语句
- go to语句
- continue语句
- return语句
分支语句
if语句
代码演示:
#include <stdio.h>
int main()
{
int a = 0;
scanf("%d", &a);
if (a > 10)
{
printf("大于10\n");
}
else if (a == 10)
{
printf("等于10\n");
}
else
{
printf("小于10\n");
}
if (a < 20)
{
printf("小于20\n");
}
if (a < 20);
{
printf("小于20\n");
}
return 0;
}
- 1.注意从第一个if(只有if),到第一个第一个else(只有else),是第一个if语句,使用a进行判断后只会进入整个if语句的一个分支中
- 2.每一个if(只有if),都是一个新的if语句,不同的if语句如果条件表达式为真则每个if语句的内容都会执行
- 3.易错点 if()后面没有 " ; " 这个错误不好找,作者本人深有体会,希望各位好好注意
- 结果如下
- 显然 无论输入什么值第2个if语句后面的打印都会执行都会
- 当然原因也很简单,就是" ; ",被if语句当成一个空语句,后面的{}里面的语句,变成普通语句
switch语句
代码演示:
#include <stdio.h>
int main()
{
int input = 0;
while (scanf("%d", &input) == 1)
{
switch (input)
{
case 1:
printf("appearancebook\n");
case 2:
printf("appearancebook\n");
break;
case 3:
printf("appearancebook\n");
default:
printf("输入错误\n");
}
}
return 0;
}
- switch()后面一样没有" ; "
- case 整型常量表达式 后面是" : " ,而不是" : "
- " break; "用于跳出switch语句,如果没有break语句,当进入case 1,后还好按顺序进入case 2;直到遇到break语句跳出switch语句
- 如果整型常量表达式与switch语句的所以分支都对不上,就会进入default语句的内容,然后跳出switch语句,如果没有default语句,则直接跳出swich语句
- 主意case 分支没有用{}管理,而是使用break语句管理
代码演示结果
循环语句
while语句
代码演示:
#include <stdio.h>
int main()
{
int i = 0;
while (i<10)
{
printf("%d\n", i);
i++;//打印0到9
}
return 0;
}
- while语句中,要注意while()后面不要加" ; "
- 表达式为真(非0),进入循环,表达式为假(0)
代码演示结果:
for 语句
代码演示:
#include <stdio.h>
int main()
{
int i = 0;
for (i = 0; i <= 9; i++)
{
printf("%d\n", i);//打印1到9
}
return 0;
}
- for(循环变量起始值;循环条件;循环变量调整)
- for()后面一样不要加" ; "
代码演示结果:
do while语句
代码演示:
#include <stdio.h>
int main()
{
do
{
printf("appearancebook\n");
} while (0);
return 0;
}
- 无论循环条件是什么,首先do while语句都会执行一次循环,然后根据循环条件判断是否继续循环
- while()后面要加" ; ",这里其实不重要因为编译器会报错的
代码演示结果:
goto语句
- 这个其实不常用
我就直接演示一种情况:
#include <stdio.h>
int main()
{
int i = 0;
for (i = 0; ; i++)
{
if (i == 72)
goto appearancebook;
}
appearancebook:
printf("appearancebook\n");
return 0;
}
- 上述代码中的for循环语句显然是一个死循环,
- 利用goto 语句跳出死循环
- goto xxxxxxx;
- xxxxxxx:
总结
- 这部分的内容其实挺简单的,主要是有一些易错的地方
- 多写几个题,也就能熟悉这些语句了