顺序结构是程序流程控制的基本结构。但是,为了实现各种功能的算法,除了按照正常的流程顺序执行外,还需要改变顺序控制流程以实现某种功能,这种情况下要用到选择语句,循环语句等控制语句。
控制语句主要有:1:条件语句(if....else) 2:循环语句(for,while,do.....while) 3:中断switch或循环语句(break) 4:结束当前循环语句(continue) 5:多分支选择语句 (switch) 6:返回语句 (return) 7:转向语句 (goto)(一般不推荐使用,会破坏代码的结构)
一:选择结构
选择结构用于根据条件与与否选择下一步要执行的动作,可以从两种或多种候选动作中选择一种执行。
简单if语句形式:
if(表达式)
语句段
例: 三个数排序
题目描述
小小想写一个简单的三个数排序的程序,就是从键盘输入三个整数,将这三个数按照从小到大的顺序输出。
输入
一行:三个整数。
输出
一行:排完序后的三个整数。
样例输入
11 10 5
样例输出
5 10 11
AC代码:
if....else语句形式:
if(表达式)
语句段1
else
语句段2
注:
(1):else总是与if成对出现。可以单独使用if语句,但不能单独使用else语句。
(2):else总是与它上面的最近的未配对的if匹配。
例: 兑奖
题目描述
某饮料公司最近推出了一个“收集瓶盖赢大奖”的活动:如果你拥有10个印有“幸运”,或者20个印有“鼓励”的瓶盖,就可以兑换一个神秘大奖。现分别给出你拥有的“幸运”和“鼓励”的瓶盖数,判断是否可以去兑换大奖。若可以兑换大奖,则输出Yes,否则输出No。
输入
仅一行。包含两个整数,分别为印有“幸运”和“鼓励”的瓶盖数目。
输出
若可以兑换大奖,则输出Yes,否则输出No。
样例输入
10 30
样例输出
Yes
AC代码:
二:循环结构
要构成循环结构,必须满足四个要素:
(1):循环控制表达式和循环控制变量
(2):循环体语句
(3):初始条件设置语句
(4): 循环变量修改语句
while语句在每次执行循环体之前测试循环条件。do.....while语句在每次执行循环体之后测试循环条件。for语句提供特殊语法,可以初始化或更新一个或几个控制变量,同时测试循环条件。(这个平时比较常用)。
while语句形式:
while(表达式)
语句
例: 数字和1
题目描述
输入一个正整数,输出它的各位数字之和。
输入
一行一个正整数,int 范围以内。
输出
一行一个正整数,表示答案。
样例输入
153
样例输出
9
AC代码:
do.....while语句形式:
do
语句
while(表达式);(注意有分号)
例:数列求和
题目描述
数列求和是一类常见的问题,本题有一定的代表性:
求s=a+aa+aaa+aaaa+⋯+aa⋯aa(n位)
其中,a的值由键盘输入,位数n也由键盘输入。
输入描述
第一行输入a的值;
第二行输入位数n。
输出描述
输出对n(n≥0)个数完成求和运算后的结果。
比如a=3,n=6时,s=3+33+333+3333+33333+333333
样例
输入
3 6
输出
370368
AC代码:
for语句形式:
for(表达式1;表达式2;表达式3)
语句
for语句由4部分组成,即3个表达式和循环语句。for语句中的三个表达式以两个分号分隔,3个表达式是可选项,但是分隔它们的分号不能省略。3个表达式的作用如下:
表达式1:设置初始条件,只执行一次。通常情况下为变量赋值
表达式2:条件表达式,用来判断是否执行循环
表达式3:循环变量修改语句,用来保证循环可以正常结束
例: 数字统计I
题目描述
请统计某个给定范围[L,R]的所有整数中,数字2出现的次数。
比如给定范围[2,22],数字2在数2中出现了1次,在数12中出现1次,在数20中出现1次,在数21中出现1次,在数22中出现2次,所以数字2在该范围内一共出现了6次。
输入
输入共1行,为两个正整数L和R(1≤L≤R≤10000),之间用一个空格隔开。
输出
输出共1行,表示数字2出现的次数。
样例输入
2 22
样例输出
6
AC代码:
注:本文章主要面向初学者,故例题比较简单。