for语句
一、for语句的格式
格式1:
for (控制变量初始化表达式;条件表达式;增量表达式)
语句1;
格式2:
for (控制变量初始化表达式;条件表达式;增量表达式)
{ 语句1;
语句2;
…
}
注意:
1、当条件表达式的值为真时重复循环体,否则结束循环;这一点和pascal语言的while语句一致。
2、for语句中的“控制变量初始化表达式”、“条件表达式”、“增量表达式”都是选择项,即可以省略,但分号不能省略。省略了“控制变量初始化表达式”,表示不对循环控制变量赋初值;省略了“条件表达式”,如果不做其他处理时,会成为死循环;省略了“增量表达式”,则不对循环控制变量进行操作,这时可在循环体中加入修改循环控制变量的语句。
3、可以在“控制变量初始化表达式”、“增量表达式”部分放一条以上的语句,中间用逗号分隔。
for语句的执行过程:
1、执行“控制变量初始化表达式”,使控制变量获得一个初值。
2、判断控制变量是否满足“条件表达式”,若满足条件则执行一遍循环体,否则结束整个for语句,继续执行for语句下面的句子。
3、根据“增量表达式”,计算出控制变量所得到的新值。
4、自动转到第2步。
格式举例:
1、将控制变量从1变到100,增量为1
for (i=1;i<=100;++i)
2、将控制变量从7变到77,增量为7
for (i=7;i<=77,i+=7)
3、控制变量i和j共同进行循环控制,i从1变到99,j从2变到100,增量均为2
for (int i=1,j=2;i<=99 && j<=100;i+=2,j+=2)
注意:可以在for循环“控制变量初始化语句”中声明变量,这些变量只在for循环结构中有效,离开了该for结构,变量就无效了。
例1:计算并输出1+2+…+100的和。
#include<iostream>
using namespace std;
int main()
{ int sum=0;
for (int i=1;i<101;i++)
sum+=i;
cout<<sum<<endl;
return 0;
}
二、循环的嵌套
一个循环体内可以包含另一个完整的循环结构,这就构成了循环语句的嵌套。嵌套着的每一个循环语句称为一层,处于较外层的叫做外循环,处于较内层的叫做内循环;有两层嵌套的称为双重循环,有三层嵌套的叫三重循环,以此类推。
例2:水仙花数是指一个三位数,其各位数的立方和等于该数,如153=1*1*1+5*5*5+3*3*3,编程输出所有的水仙花数。
#include<iostream>
using namespace std;
int main()
{ int m,n,k;
for (m=1;m<10;m++)
for (n=0;n<10;n++)
for (k=0;k<10;k++)
if (m*m*m+n*n*n+k*k*k==m*100+n*10+k)
cout<<m<<n<<k<<endl;
return 0;
}
例3:利用for循环输出下图的三角形。
*
* *
* * *
* * * *
* * * * *
#include<iostream>
using namespace std;
int main()
{ for (int i=1;i<6;i++)
{ for (int j=1;j<=i;j++)
cout<<" * ";
cout<<endl;
}
return 0;
}
三、作业
1、zerojudge:
基础题:a059、a244、a621、b146、b202、b209、d010、d069、d072、d074、d490、d491、d498、d532、d587
for循环的嵌套:a111、b205、c005、d236
思考题:a040、a042、a148、a240、b097、c004、d881
2、求100+97+……+10+7+4+1之和。
3、在8*8的国际象棋棋盘上,第一格放一粒米,第二格放两粒米,第三格放四粒米,第四格放八粒米,以此类推,后一格是前一格的两倍,输出一共需要多少粒米。
4、鸡兔同笼49只,100条腿地上走,输出鸡和兔的数量。
5、某人想将一张面值为100元的人民币兑换成5元、1元和0.5元面值的纸币,但要求零钱总数为100张,且每种面值的纸币至少有一张,输出所有兑换方法。
for语句的更多相关文章
- python第六天 函数 python标准库实例大全
今天学习第一模块的最后一课课程--函数: python的第一个函数: 1 def func1(): 2 print('第一个函数') 3 return 0 4 func1() 1 同时返回多种类型时, ...
- whdxlib
1 数据库系统实现 实 验 指 导 书 齐心 彭彬 计算机工程与软件实验中心 2016 年 3 月2目 录实验一.JDBC 应用程序设计(2 学时) ......................... ...
- 【.net 深呼吸】细说CodeDom(2):表达式、语句
在上一篇文章中,老周厚着脸皮给大伙介绍了代码文档的基本结构,以及一些代码对象与CodeDom类型的对应关系. 在评论中老周看到有朋友提到了 Emit,那老周就顺便提一下.严格上说,Emit并不是针对代 ...
- 将表里的数据批量生成INSERT语句的存储过程 增强版
将表里的数据批量生成INSERT语句的存储过程 增强版 有时候,我们需要将某个表里的数据全部或者根据查询条件导出来,迁移到另一个相同结构的库中 目前SQL Server里面是没有相关的工具根据查询条件 ...
- mysql学习之 sql语句的技巧及优化
一.sql中使用正则表达式 select name,email from user where email Regexp "@163[.,]com$"; sql语句中使用Regex ...
- SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少.但我 ...
- MySQL 系列(三)你不知道的 视图、触发器、存储过程、函数、事务、索引、语句
第一篇:MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决 第二篇:MySQL 系列(二) 你不知道的数据库操作 第三篇:MySQL 系列(三)你不知道的 视图.触发器.存储过程.函数 ...
- Oracle 数据库语句大全
Oracle数据库语句大全 ORACLE支持五种类型的完整性约束 NOT NULL (非空)--防止NULL值进入指定的列,在单列基础上定义,默认情况下,ORACLE允许在任何列中有NULL值. CH ...
- MyBatis源码分析(二)语句处理器
StatementHandler 语句处理器,主要负责语句的创建.参数的设置.语句的执行.不负责结果集的处理. Statement prepare(Connection connection, Int ...
- 一条Sql语句分组排序并且限制显示的数据条数
如果我想得到这样一个结果集:分组排序,并且每组限定记录集的数量,用一条SQL语句能办到吗? 比如说,我想找出学生期末考试中,每科的前3名,并按成绩排序,只用一条SQL语句,该怎么写? 表[TScore ...
随机推荐
- css伪元素选择器(伪对象选择器)checked + 伪元素练习
伪对象也叫伪元素,在过去,伪类和伪元素都被书写成前面只加一个冒号,实际上应该是: :weilei ::伪元素 而现在我们为了兼容旧的书写方式,用一个冒号引导伪类也是能被解析的. 伪类一般反应无法在CS ...
- DownloadManager补漏
原始完成于:2014-10-24 20:01:03 DownloadManager是一个处理HTTP下载请求的系统服务: 1. 基本用法 1 private void download() { 2 R ...
- 怎么做一个bat文件
怎么做一个bat文件 | 浏览:639 | 更新:2014-11-25 17:02 1 2 3 4 5 6 7 分步阅读 其实做一个.BAT文件很简单,下面我就以做一个清除系统垃圾.BAT文件为例,给 ...
- 2014年5月份第3周51Aspx源码发布详情
HGM简单连连看游戏源码 2014-5-19 [VS2010]源码描述:这是一款基于WinForm窗体程序的简单水果连连看的小游戏.界面比较美观, 功能如下:该游戏可以显示当前关卡,还有剩余时间.重 ...
- cookie窃取和session劫持
Updates 2014-08-17 感谢@搞前端的crosser的提醒,加入了HTTP Response Splitting的内容. 此篇文章的Presentation戳这里. 一.cookie的基 ...
- C语言获得数组长度的函数
<转自百度知道> 1.c语言中,定义数组后可以用sizeof命令获得数组的长度(可容纳元素个数). 例如: int data[4]; int length; length=sizeof(d ...
- Matcher.group
Exception in thread "main" java.lang.IllegalStateException: No match found at java.util.re ...
- 日常笔记 ---- 图形学-Frenel函数材质球实现方式
图形学-Frenel函数材质球实现方式 调个材质 大概公式 自发光= 自定义边光颜色* ((1-法线与视角方向点乘)的 自定义幂次方 ) 这个是比较简单方法 模型的法线与视角方向 角度越大 表 ...
- B - 搬寝室
Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit Status Pract ...
- ionic react-native和native开发移动app那个好
ionic react-native和native开发移动app那个好 ? 移动端开发如何选型?这里介绍一下我眼中的ionic,react-native,native 三种移动端开发选型对比.欢迎大家 ...