for循环 --和复合赋值
阶乘
1.n!=1x2x3x4x...xn
2.写出一个程序,让用户输入n,然后计算输出n!
*变量:
*显然读用户的输入需要一个int的n,然后计算的结果需要用一个变量保存,可以是int的factor,在计算中需要有一个变量不断地从1递增到n,那可以是int的i
他出现了负数,说明这个程序还是有问题的,因为他是有界限的,就比如一张白纸,让你一直写最后总会因为到达界限了而没有办法继续写的了
控制台
这时候我们可以改一个形式,把while改成另外一种循环叫做for循环

for循环:
~for循环像一个计数循环:设定一个计数器,初始化它,然后在计数器到达某值之前,重复执行循环体,而每执行一轮循环,计数器值以一定步进进行调整,比如加1或者-1
例:
for (i = 0; i <5; i+1) {
System.out.println(i);
}
格式:
for ( 初始化; 条件; 单步动作) {
}
1.第一部分是一个初始化,可以定义一个新的变量:int count=10或者直接赋值:i=10
2.第二个部分是循环维持的条件,这个条件是先验的,与while循环一样,进入循环之前,首先要检验条件是否满足,条件满足才执行循环;条件不满足就结束循环
3.第三个部分是步进,即每轮执行了循环体之后,必须执行的表达式,通常我们在这里改变循环变量,进行加或减的操作
for = 对于
~for(count=10;count>0;count=count-1)
~就读成:"对于一开始的count=10,当count>0时,重复循环体,每一轮循环在做完循环体内语句后,使得count递减"
循环次数
~for(i=0;i<n;i=i+1)
~则循环的次数是n,而循环结束以后,i的值是n,循环的控制变量i,是选择从0开始还是从1开始,是判断i<n还是判断i<=n,对循环的次数,循环结束后变量的值都有影响
妙:1.如果有固定次数,用for
2.如果必须执行一次,用do_while
3.其他情况用while
复合赋值
~5个算数运算符,+ - * / %,可以和赋值运算符"="结合起来,形成复合运算符:"+= -= *= /=和%="
~total += 5;
~total = total + 5;
~注意两个运算符之间不要有空格
for循环 --和复合赋值的更多相关文章
- 《Visual C#从入门到精通》第四章使用复合赋值和循环语句——读书笔记
第1章 使用复合赋值和循环语句 4.1 使用复合赋值操作符 任何算术操作符都可以像这样与赋值操作符合并,从而获得复合赋值操作符. 不要这样写 要这样写 Variable=Variable*number ...
- Java学习随笔2:Java复合赋值表达式的小问题
问题:i += j只是i = i + j的简写么? 答案:非也!看下面的程序: int i = 5; long j = 8; i += j; // 可以通过编译且结果正确 i = i + j; // ...
- python:循环定义、赋值多个变量
exec函数,可以循环定义.赋值多个变量 exec ("temp%s=1"%1) 这段代码的意思是,让exec执行temp1=1.字符串里面的%s由‘1’代替了. 我们在外面再 ...
- PHP通过循环给数组赋值
$userDatas = [ ['user_id'=>1], ['user_id'=>3] ]; $userIds = []; foreach ($userDatas as $item){ ...
- x+=i和x = x+i比较 -- 简单赋值和复合赋值
这两个赋值方式其实是有区别的,如果最后结果的类型和左操作数的类型一样,那么这两个表达式就完全等价. 下面来看看两个例子来理解它们的区别: 编写一个程序,使得x+=i合法, x = x+i: 不合法. ...
- C# 复合赋值操作符
前面讲过如何使用算术操作符来创建新值.例如,以下语句使用操作符+来创建比变量answer大42的一个值,新值将写入控制台: Console.WriteLine(answer + 42); 前面还讲过如 ...
- Java 基础【06】复合赋值运算
这是今天在开发当中遇到的问题,虽然不是很大,但还是花了一点时间去琢磨. 嗯,好了.先看一段源代码 short value=2; value-=2; 源码就是上面这个样子的,我动手写的时候因为理解的问题 ...
- sql 游标循环当中重新赋值
sql 游标循环当中的变量必须重新赋值不然变量的值就是前次循环的值
- mysql存储过程查询结果循环遍历 判断 赋值 游标等基本操作
一.首先说下本篇博客所实现功能的背景和功能是怎样的: 背景:因为公司项目开始迁移新平台项目,所以以前的平台老数据以及订单信息需要拆分表,而且需要业务逻辑来分析以前的订单表,来拆分成另外的几个新表,包括 ...
随机推荐
- 算法篇(1) KMP JS实现最优查找子串
var strStr = function (haystack, needle) { let i=0, j = 0; let length = haystack.length; let next = ...
- 《手把手教你》系列基础篇(九十四)-java+ selenium自动化测试-框架设计基础-POM设计模式实现-下篇(详解教程)
1.简介 上一篇宏哥用PageFactory实现了POM,宏哥再介绍一下如果不用PageFactory如何实现POM. 2.项目实战 在这里宏哥以百度首页登录的例子,如果用POM实现,在测试脚本中实际 ...
- Python 工匠:使用数字与字符串的技巧
序言 这是 "Python 工匠"系列的第 3 篇文章. 数字是几乎所有编程语言里最基本的数据类型,它是我们通过代码连接现实世界的基础.在 Python 里有三种数值类型:整型(i ...
- 【mq】从零开始实现 mq-03-引入 broker 中间人
前景回顾 [mq]从零开始实现 mq-01-生产者.消费者启动 [mq]从零开始实现 mq-02-如何实现生产者调用消费者? [mq]从零开始实现 mq-03-引入 broker 中间人 上一节我们学 ...
- JDBC往数据库传值中文乱码以及时区不一致解决
设置一下时区和编码就可以了 "jdbc:mysql://localhost:3306/jdbcprac?characterEncoding=UTF-8&&useSSL=fal ...
- 详解:什么是VXLAN?
点击上方"开源Linux",选择"设为星标"回复"学习"获取独家整理的学习资料! 本文介绍了什么是VXLAN,以及VXLAN的基本概念和工作 ...
- Docker将镜像文件发布到私服库
上一篇已经介绍如何将镜像发布到阿里云:https://www.cnblogs.com/sportsky/p/16246394.html 一.创建新镜像文件 1.创建容器并在容器内创建文件 在根目录下创 ...
- MyBatisPlus实现分页和查询操作就这么简单
<SpringBoot整合MybatisPlus基本的增删改查,保姆级教程>在这篇文章中,我们详细介绍了分页的具体实现方法.但是,在日常的开发中还需要搜索功能的.下面让我们一起动起手来,实 ...
- 使用 VS Code + Markdown 编写 PDF 文档
背景介绍 作为一个技术人员,基本都需要编写技术相关文档,而且大部分技术人员都应该掌握 markdown 这个技能,使用 markdown 来编写并生成 PDF 文档将会是一个不错的体验,以下就介绍下如 ...
- 存储器、I/O组织、微处理器
重点知识 存储器的内部结构及访问方法 存储器分段以及存储器中的逻辑地址和物理地址 I/O端口组织及编址方式 时序和总线操作以及系统的工作方式和特点. 存储器组织 8086有20根地址线,可寻址的存储器 ...