1.if分支语句:
练习:编写程序,从终端接收两个数 Num1和Num2,如果Num1 >= Num2则打印Num1
否则将两者交换打印Num1
使用场景:
1.判断逻辑使用分支语句
2.同一类数据完成不同操作
1.简单分支:
2.阶梯分支:
if (表达式1)
{
语句块1;
}
else if (表达式2)
{
语句块2;
}
else if (表达式3)
{
语句块3;
}
else
{
语句块4;
}
3.嵌套分支:
if (表达式1)
{
语句块1;
if (表达式2)
{
语句块2;
if (表达式3)
{
语句块3;
}
}
}
最多嵌套3-5层
练习:
1.从终端接收一个字母,打印出该字母在字典中的下一个字母,例如: 'a' -> 'b'
'A' -> 'B',如果是'z'或者'Z',打印'a'或者'A',如果输入的不是字母则打印
"input error"
2.switch分支:
1.基本形式:
switch (整形表达式)
{
case 常量1:语句块1;break;
case 常量2:语句块2;break;
case 常量3:语句块3;break;
default:
语句块4;
}
注意:
1.switch后面的表达式的值必须为整形
2.case后面必须为常量,不能是变量或表达式
3.switch只与case后面的值比一次,如果相同则顺序向下执行,直到break或程序结束退出
练习:
1.从终端输入一个成绩,90 - 100之间打印 优秀
80 - 89 良好
70 - 79 中等
60 - 69 及格
60分以下 不及格
下图为用if else实现代码
下图为用switch实现代码:
2.switch嵌套
里层switch结束后如果不加break,外层switch顺序向下执行
3.循环结构:
1. while 循环
1.基本形式
while (表达式)
{
语句块1;
}
练习:编写程序利用循环实现 0 - 1000的所有能同时
被2 3 5整除的数字的和值
2.死循环
while (1)
{
}
2. do .. while 循环
1.基本形式:
do {
语句块;
} while (表达式);
下图为实现从1到100求和的代码和结果:
注意:
1.do .. while后面要加;
2.do while无论表达式是否成立都会先执行一次
3.do while和while不能等价转换
3. for循环
1.基本形式:
for (A; B; C)
{
D;
}
A:在循环前执行一次
B:循环的条件
C:每次循环结束后都执行C
D:循环体内部代码
4. goto循环
练习:
1.从终端输入x的值根据公式获得y的值
1 + 2 + 3 + .. + x (0 < x <= 5)
y = 100 - x - (x-1) - (x-2) - ... - 1 (5 < x <= 10)
x^2 (x > 10)
2.打印出0 - 1000以内所有能同时被 2 3 5 整除余 1 的所有数字(每8个数字一行)及其个数