JAVA基础学习(4)之循环控制
2024-09-05 16:46:04
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求和
最新文章
- Mac终端下打开sublime
- Git远程仓库(github
- js类型转换的坑
- jquery 设置表格奇偶数的颜色和行被选中的颜色样式jquery 设置表格奇偶数的颜色和行被选中的颜色样式
- reactjs入门到实战(三)---- 组件详解
- 格式太旧或是类型库无效。 (Exception from HRESULT: 0x80028019 (TYPE_E_UNSUPFORMAT))
- MySQL定时备份之使用Linux下的crontab定时备份实例
- c++(重载、覆盖、隐藏)
- 转发:Ubuntu软件卸载安装的命令
- SPOJ DIVCNT2
- Exp2 后门原理与实践
- 移动 Ubuntu16.04 桌面左侧任务栏到屏幕底部
- TCP服务端开发为例--web开发不同url请求为何会走不同方法
- python中的os
- jmeter JDBC connection configuration配置方式
- Tomcat改端口号;修改访问路径,以及配置Context 标签以后Tomcat启动不了
- 【Qt开发】常用控件--QSpinBox和QDoubleSpinBox
- jQuery 实战读书笔记之第三章:操作 jQuery 集合
- html5 ajax Java接口 上传图片
- NDK 使用STL
热门文章
- 函数的应用_python
- Android 开发 微信分享,登陆,获取信息
- tomcat集群搭建集成nginx负载均衡
- Codeforces Round #614 (Div. 2) A-E简要题解
- vue.js + element中el-select实现拼音匹配,分词、缩写、多音字匹配能力
- Vue中美元$符号的意思
- mysql(4):性能分析和性能优化
- DVWA全级别之Insecure CAPTCHA(不安全的验证码)
- Golang利用第三方包获取本机cpu使用率以及内存使用情况
- new和delete的深层次剖析(C++)