JAVA基础学习(4)之循环控制
4循环控制
- 4.1 for循环
- 4.1.1 for循环
- 固定次数for循环
- 先执行一次do-while循环
- 其他while循环
Scanner in = new Scanner(System.in);//计算阶乘
int n = in.nextInt();
int factor = 1;
;
for (int i = 1; i <= n; i++)
{
// factor=i*factor;
factor *= factor;
}
System.out.println(n + "的阶乘值为:" + factor);
- 4.1.2 复合赋值
- a*=6 -> a=a*6
- a/=b+6 -> a=a/(b*6)
- i=i+1 ->i i++
Scanner in = new Scanner(System.in);//判断素数
int n = in.nextInt();
int flag = 0;
for (int i = 2; i < n; i++)
{
if (n % i == 0)
{
flag = 1;
break;
}
}
if (flag == 1)
{
System.out.println(n + "不是素数!");
} else
{
System.out.println(n + "是素数!");
}
- 4.1.1 for循环
- 4.2循环控制
- 4.2.1循环控制
- 素数判断
for (int n = 2; n < 100; n++)//输出100以内的素数
{
int flag = 1;
for (int i = 2; i < n; i++)
{
if (n % i == 0)
{
flag = 0;
break;
}
}
if (flag == 1)
{
System.out.print(n + " ");
}
}- break跳出循环
- continue跳出循环这一轮的语句进入下一轮
- 4.2.2多重循环
- lable:
- 标号标示循环,break lable或 continue lable 可以跳出
int count = 1;//输出前59个素数
int n = 2;
while (count <= 50)
{
int flag = 1;
for (int i = 2; i < n; i++)
{
if (n % i == 0)
{
flag = 0;
break;
}
}
if (flag == 1)
{
System.out.println("第" + count + "个素数:" + n);
count++;
}
n++;
}
- 4.2.3逻辑类型
- 按照优先级排列
- !
- &&
- ||
-
Scanner in = new Scanner(System.in);//凑硬币
int amount = in.nextInt();
OUT: for (int one = 0; one <= amount; one++)
{
for (int five = 0; five <= amount / 5; five++)
{
for (int ten = 0; ten <= amount / 10; ten++)
{
for (int twenty = 0; twenty <= amount / 20; twenty++)
{
if ((one + 5 * five + 10 * ten + 20 * twenty) == amount)
{
System.out.println(one + "张1元," + five + "张5元," + ten + "张10元," + twenty + "张20元");
break OUT;
}
}
}
}
} 
- 4.2.1循环控制
- 4.3循环的例子
- 4.3.1求和
-
Scanner in = new Scanner(System.in);// f=1-1/2+1/3...求和
int n = in.nextInt();
double sum=0;
int sign=1;
for (int i = 1; i <= n; i++,sign=-sign)
{
sum+=sign*1.0/i;
}
System.out.println("和为:"+sum);
System.out.print("和为:");
System.out.printf("%.2f",sum);
-
- 4.3.2最大公约数
-
Scanner in=new Scanner(System.in);//求最大公约数
int a=in.nextInt();
int b=in.nextInt();
int gcd=1;
// for(int i=2;i<=a&&i<=b;i++)
for (int i = 2; i <= (a<b?a:b); i++)
{
if((a%i==0)&&(b%i==0))
{
gcd=i;
}
}
System.out.println(a+"和"+b+"最大公约数为:"+gcd); Scanner in=new Scanner(System.in);//辗转相除法求最大公约数
System.out.println("请输入a和b:");
int a=in.nextInt();
int b=in.nextInt(); while (b!=0)
{
int r=a%b;
System.out.println(a+" "+b+" "+r);
a=b;
b=r;
}
System.out.println("最大的公约数为:"+a);
-
- 4.3.1求和
JAVA基础学习(4)之循环控制的更多相关文章
- Java基础学习-- 继承 的简单总结
代码参考:Java基础学习小记--多态 为什么要引入继承? 还是做一个媒体库,里面可以放CD,可以放DVD.如果把CD和DVD做成两个没有联系的类的话,那么在管理这个媒体库的时候,要单独做一个添加CD ...
- Java基础学习中一些词语和语句的使用
在Java基础学习中,我们刚接触Java会遇到一些词和语句的使用不清的情况,不能很清楚的理解它的运行效果会是怎么样的,如:break,continue在程序中运行效果及跳转位置, 1.先来看看brea ...
- Java基础学习笔记总结
Java基础学习笔记一 Java介绍 Java基础学习笔记二 Java基础语法之变量.数据类型 Java基础学习笔记三 Java基础语法之流程控制语句.循环 Java基础学习笔记四 Java基础语法之 ...
- 转载-java基础学习汇总
共2页: 1 2 下一页 Java制作证书的工具keytool用法总结 孤傲苍狼 2014-06-24 11:03 阅读:25751 评论:3 Java基础学习总结——Java对象的序列化和 ...
- java基础学习总结——开篇
java是我学习的第一门编程语言,当初学习java基础的时候下了不少功夫,趁着这段时间找工作之际,好好整理一下以前学习java基础时记录的笔记,当作是对java基础学习的一个总结吧,将每一个java的 ...
- Java基础学习笔记(一)
Java基础学习笔记(一) Hello World 基础代码学习 代码编写基础结构 class :类,一个类即一个java代码,形成一个class文件,写于每个代码的前端(注意无大写字母) XxxYy ...
- java基础学习总结——java环境变量配置(转)
只为成功找方法,不为失败找借口! 永不放弃,一切皆有可能!!! java基础学习总结——java环境变量配置 前言 学习java的第一步就要搭建java的学习环境,首先是要安装 JDK,JDK安装好之 ...
- JAVA基础学习-集合三-Map、HashMap,TreeMap与常用API
森林森 一份耕耘,一份收获 博客园 首页 新随笔 联系 管理 订阅 随笔- 397 文章- 0 评论- 78 JAVA基础学习day16--集合三-Map.HashMap,TreeMap与常用A ...
- 尚学堂JAVA基础学习笔记
目录 尚学堂JAVA基础学习笔记 写在前面 第1章 JAVA入门 第2章 数据类型和运算符 第3章 控制语句 第4章 Java面向对象基础 1. 面向对象基础 2. 面向对象的内存分析 3. 构造方法 ...
- [转帖]java基础学习总结——多态(动态绑定)
https://www.cnblogs.com/xdp-gacl/p/3644035.html 多态的概念 java基础学习总结——多态(动态绑定) 一.面向对象最核心的机制——动态绑定,也叫多态
随机推荐
- Java实现图形界面的三部曲及IDE中的窗口设计
设计和实现图形用户界面的工作主要有以下几点: • (1)创建组件(Component) • 创建组成界面的各种元素,如按钮.文本框等.• (2)指定布局(Layout) • 根据具体需要排列它们的位置 ...
- 使用Vue创建一个新项目
1.环境 保证已经安装好了node\npm\vue等工具,将路径设置为想要建立新项目的文件夹路径 2.关于npm与cnpm npm包管理器,是集成在node中的,node环境安装完成,npm包管理器也 ...
- TD - 多选框 - CheckBox
模板 模板1:TD //Html - checked="true" 默认选中 <input dojoType="bootstrap.form.CheckBox&qu ...
- 查看gcc编译器版本
我们在windows下DS5中编译时使用GCC交叉编译器,但是在ubuntu时也需要使用GCC编译器,这时最好时保持版本一致,所以就需要查看windows下版本,如下图,在按装的文件夹中找到对应得文件 ...
- Java-类的生命周期浅析
简述:Java虚拟机为Java程序提供运行时环境,其中一项重要的任务就是管理类和对象的生命周期.类的生命周期.类的生命周期从类被加载.连接和初始化开始,到类被卸载结束.当类处于生命周期中时,它的二级制 ...
- nginx知识学习
设备: macbook 有用的命令行: sudo nginx -t 测试nginx是否正常 sudo nginx -s reload 平滑重启 配置目录: /usr/local/etc/nginx ...
- Linux - 查看静态硬件信息
概述 查看系统的 信息 一些 相对静态 的信息 背景 一直想写, 但是没来得及整理 每次要用的时候, 都慌里慌张的到处找 这次把他记下来 环境 CentOS 7 下面有些方法, 可能是 centos ...
- 牛客多校第一场 A Equivalent Prefixes 单调栈(笛卡尔树)
Equivalent Prefixes 单调栈(笛卡尔树) 题意: 给出两个数组u,v,每个数组都有n个不同的元素,RMQ(u,l,r)表示u数组中[l,r]区间里面的最小值标号是多少,求一个最大的m ...
- intellij idea设置打开多个文件显示在多行tab上
- iview渲染函数
<Table border :columns="discountColumns" :data="discountData.rows"></Ta ...