C/C++知识总结 四 循环与分支语句
C/C++循环与分支语句
- 循环与分支语句的意义
- 关系运算符、逻辑运算符
- for循环和嵌套for循环(基于范围for循环)
- while循环与do while循环
- 分支if语句、if else语句、if else…if else 语句
- switch case语句
- break与continue语句
循环与分支语句的意义
循环与分支的存在是部分代码可以多次执行,直到达到某些条件后,退出循环提高了效率,使编程更加灵活、得心应手。
关系运算符与逻辑运算符
- 关系运算符(二目运算符)(>、<、 >=、 <=、 ==)
- 逻辑运算符(!、 &&、 ||)
- 补充:位或运算符
- 参考各种运算符用法
for循环和嵌套for循环(基于范围for循环)
- for循环格式: for(声明赋值变量1,声明赋值变量2···;返回值为真或假的关系式;对变量进行操作)
//例子1:
for(int i=0,int k=10;i<k;i++,k--);
cout<<"xun huan zhong";
- 注意:for循环有三个循环条件分别用‘;’号分隔,三个条件均是(根据需要)可以省略的,而每个条件又可以写多个语句(如在第一个条件中 写了两个句子分别为int i=0,int k=10)并以‘,’号分隔
例子2:循环打印数组元素
#include<stdio.h>
int main()
{
char ar[11]={"Hollowword"}; //注意:字符串中10个英文至少要放到数组元素为11到里面,因为最后一个数组元素(ar[10])要放字符串结束符:'\0'
for(int i=0;i<10;i++)
printf("%c\n",ar[i]);
return 0;
}
- 嵌套for循环格式(本质:for循环里面又有一个for循环,里边还可以再加for循环)
//格式:
for( ; ; )
{
for( ; ; )
{
for( ; ; )
{
····
}
}
}
举例:二维数组的初始化
#include<stdio.h>
int main()
{
int array[10][10];
for(int i=0;i<10;i++) //外层循环二维数组行数
for(int k=0;k<10;k++) //内层循环二维数组列数
{
array[i][k]=0; //赋值
}
return 0;
}
/*注意:第一个for循环后没有加一对{}号,而内层的for循环却加了。这是因为for后默认可以跟一条语句在循环内执行,
而加了{ }后,可以在其中写多条语句,作为一个代码块在循环内执行,在其它地方代码块这种格式也同样适用*/
while循环与do while循环
- while循环格式
while (condition执行条件)
{
statements执行内容
}
- do while循环的格式
do
{
statements
} while (condition);
- 注意for循环、while循环、do while循环的差别
首先for循环与while循环是可以相互替代的,for、while循环与do while循环的差别是
for、while循环在执行循环体的时候会先检测是否符合循环条件,而do while循环是 先执行一次循环体后,再检查是否要继续循环。
分支if语句、if else语句、if else…if else 语句
- 分支if()语句
if (condition) //如果条件为真就执行statements可以与for循环配合使用,注意condition可以有多个并通过逻辑运算符连接。
{
statements
}
举例:判断是否为闰年
#include<stdio.h>
int main()
{
int year;
printf("%d",year);
if ((year%4==0&&year%100 !=0) || year%400==0) //判断闰年的标准是:1、能整除4且不能整除100 2、能整除400
{
printf("shi run nian!")
}
}
- if else与if else if else语句
if else格式:
if (condition)
{
statements
}
else
{
statements
}
if eles if else····格式:
if (condition)
{
statements
}
else if (condition)
{
statements
}
else if (condition)
{
statements
}
······
switch语句(与if else if else ···语句等效)
格式:
switch (expression) //跳转表达式
{
case constant1: //情况1;
statements
case constant2: //情况2;
statements
break;
····
default:
break;
}
/*注意switch使用的细节:默认在 switch跳转到某个case之后,会继续向下执行其他的case 直到把case执行完跳出switch语句,如果不想让程序继续执行下去可以在每种case的statements后加上break; 去直接跳出case*/
/*switch语句可以与if else 混合使用,switch也可以嵌套switch语句*/
//switch语句的应用
#include<stdio.h>
#include<stdlib.h>
int main(){
printf("输入一个表示星期的数字(1-7):");
int num=0;
scanf("%d",&num);
switch(num){
case 1:
printf("星期一\n");
break;
case 2:
printf("星期二\n");
break;
case 3:
printf("星期三\n");
break;
case 4:
printf("星期四\n");
break;
case 5:
printf("星期五\n");
break;
case 6:
printf("星期六\n");
break;
case 7:
printf("星期日\n");
break;
default:
//如果前面所有的 case 都没有命中,于是就走到 default 分支中
//如果使用了 switch 语句,必须要写 default 分支
printf("非法输入\n");
break;
}
system("pause");
return 0;
}
break与continue语句
- break语句
作用有两个:
- 如上例用法退出switch,不再执行下一个case情况。
- 用于退出循环(如果是多层嵌套循环,只能结束break;所在的一层循环)。
#include<stdio.h>
#include<stdlib.h>
int main(){
//从1循环到10,如果一旦发现 数字5就结束循环
int i=1;
while(i<=10){
printf("%d\n",i);
if(i==5){
//跳出循环
break;
}
i+=1;
}
system("pause");
return 0;
}
- continue
作用:只能在循环中使用,当执行到 continue; 语句时程序将不执行下面的语句此时直接回到该层循环起始处开始执行。
#include<stdio.h>
#include<stdlib.h>
int main(){
//for语句也是用来表示循环.
//while语句容易遗漏循环变量的更新操作
//for循环就是为了解决 while 循环的这个缺点
//从1循环到10,如果发现数字5,就跳过5,继续循环后面的数字
int i=1;
while(i<=10){
if(i==5){
i+=1;
continue;
}
printf("%d\n",i);
i+=1;
}
system("pause");
return 0;
}
总结:要想熟练掌握循环与分支语句需要耍一些关于循环的题!!!
C/C++知识总结 四 循环与分支语句的更多相关文章
- 循环 与 分支语句 和 字符函数库cctype 文件简单处理
循环 for循环 while循环 do while循环 通常,入口条件循环比出口条件循环好,因为循环开始前对条件进行检查 c++11基于范围的for循环 对数组(或容器类,如:vector和a ...
- 【java开发】分支语句、循环语句学习
一.Java分支语句类型 if-else 语句 switch 关于if-esle语句可以拆分为三种 if语句 if(条件){语句块;} if-else语句if(条件语句){语句块;} if-else ...
- T_SQL编程赋值、分支语句、循环
咱们在C#中会常用到赋值.循环.分支语句什么的 今天咱们来看下当初在C#用到的一点东西放到SQL中是怎么使用的 创建变量 在C#中创建一个值类型变量很简单 int a:这就可以了 SQL: decla ...
- HTML基础--JS简介、基本语法、类型转换、变量、运算符、分支语句、循环语句、数组、函数、函数调用.avi
JS简介 1.JavaScript是个什么东西? 它是个脚本语言,需要有宿主文件,它的宿主文件是HTML文件. 2.它与Java什么关系? 没有什么直接的联系,Java是Sun公司(已被Oracle收 ...
- 分支语句 if的嵌套 循环语句
0930 今天学习内容做以下总结: 语句的分类:顺序语句,分支语句(选择,条件),循环语句 分支语句 格式1:if(表达式(要么是true 要么是false)){} 格式2:if(){}slse{} ...
- js简介、基本语法、类型转换、变量、运算符、分支语句、循环语句、函数、函数调用
javascript是个脚本语言,需要有宿主文件,他的宿主文件是html文件. 三个常用对话框 alert("")警告对话框,弹出一个警告对话框 <script> al ...
- js部分---运算符,if分支语句,for循环;switch case 的用法;
------------------------------------------运算符---------------------------------------------------- *数 ...
- 【2-23】分支语句(switch…case)及循环语句
Switch-case分支语句与if语句作用相同,但需将情况都罗列出比较麻烦所以不常用. 其基本结构是: Switch(一个变量值) { Case 值1:要执行的代码段:break; Case 值2: ...
- SQL基本编程,分支语句,循环语句,存储过程,触发器
基本编程: 定义变量 declare @变量名 数据类型 赋值 set @变量名 = 值 select @变量名 = 值 取值打印 select @变量名 print @变量名 映射到结果集 打印到消 ...
随机推荐
- HTTP GET请求302重定向问题
1.问题描述 ① 在华为云服务器中搭建了java环境,并在tomcat中部署了一个空的web项目 ② 在此web项目中上传了一个名为:plugin_DTDREAM_LIVING_DEHUMIDIFIE ...
- 如何搭建自己的SpringBoot源码调试环境?--SpringBoot源码(一)
1 前言 这是SpringBoot2.1源码分析专题的第一篇文章,主要讲如何来搭建我们的源码阅读调试环境.如果有经验的小伙伴们可以略过此篇文章. 2 环境安装要求 IntelliJ IDEA JDK1 ...
- 爬虫之requestsku
想用selenium实现B站自动登录已经点赞等功能,看到如何解决滑动解锁有关爬虫的内容,便开始学习爬虫,没过多久又想把记录自己生活的网站做起来,朋友便推荐了layui框架倒腾了一晚上自我觉得是做后台系 ...
- pytest、tox、Jenkins实现python接口自动化持续集成
pytest介绍 pytest是一款强大的python测试工具,可以胜任各种级别的软件测试工作,可以自动查找测试用并执行,并且有丰富的基础库,可以大幅度提高用户编写测试用例的效率,具备可扩展性,用户自 ...
- Ext.grid rowexpander的展开与收缩
这里写Ext.grid.Panel的展开与收缩. 1. 确保在grid存在rowexpander对象: plugins: [{ ptype: 'rowexpander', rowBodyTpl: [' ...
- 9. selenium+request方式的cookie绕过
1. 首先确认POST请求的content-type类型 2. 查看cookies数据 3. 找到对应的headers数据 4. 如果是application/json,传入的json数据需要时jso ...
- 图数据库 Nebula Graph TTL 特性
导读 身处在现在这个大数据时代,我们处理的数据量需以 TB.PB, 甚至 EB 来计算,怎么处理庞大的数据集是从事数据库领域人员的共同问题.解决这个问题的核心在于,数据库中存储的数据是否都是有效的.有 ...
- idea 新建java类自动补充创建人,创建时间,版本等..
1.先进入 File 2.进入 Editor 找到 File and Code Templates 并点击 3.右侧点击 lncludes 4.第二项 File Header /** * @aut ...
- Unity 游戏框架搭建 2019 (八) 关于导出 UnityPackage 功能的小结
导出 UnityPackage 功能到这里要告一段落了,相信认真看的童鞋都有收获.笔者在写教程之前纠结了很久.到底是先给出一坨工具代码,然后再逐个讲解比较好,还是一篇一个知识点比较好.后来想通了.工具 ...
- 【简说Python WEB】pyechart在flask中的应用
个人笔记总结,可读性不高.只为自己总结用.怕日后忘记. 这里用到了tushare,pandas等python组件. pyechart的案例 c = ( Bar() .add_xaxis([" ...