(一)基于IDEA的JAVA基础10

相信最近许多朋友学习语言可能会有焦虑,"现在人工智能这么发达,丢个指令进去它就还给你一个结果,我们学习它还有意义吗?"。

对于这个问题,就像我们小学学习算数,我们明知道有计算器这么方便的东西,直接给个过程它就给你一个结果,那你说算数还要不要学?AI终究只是个工具,是为了帮助我们工作更加快捷的,这个不用担心,取代人的永远不是工具,是会使用工具的人。

继续回到我们的进程,上一节我们了解了那些个循环结构和特点,继续来做一些循环练习,这一块可能对大学生比较友好,可能会涉及他们的一些考试题,也都比较简单,废话不多说,直接来看练习:

练习1:

要求模拟考试结算系统,输入三次成绩,判断平均分。

老样子先分析一波,我们是不是要先用Scanner接收一下,成绩可能有小数,所以选double类型声明一个成绩变量,然后用个for循环依次加起来,输入几次平均分成几份就行了。

直接来看代码:

public class Test01 {

public static void main(String[] args) {

Scanner input = new Scanner(System.in);

//用sum接收一下总成绩

double sum=0;

for (int i=0;i<3;i++){

System.out.println("请输入第"+(i+1)+"次成绩");

//获取键盘输入成绩

double score = input.nextDouble();

//把每次成绩加起来

sum+=score;

}

System.out.println("你的总成绩是:"+sum);

System.out.println("平均成绩:"+sum/3);

}

}

因为想到有人可能乱输成绩,我们还可以在for里加个if判断一下区间:

如果成绩太低我们是不是还可以加一个嘲笑语句,这就不细说了。

练习2:

使用三种循环结构while,do.while,for循环完成计算100以内偶数之和。

先看for循环

public class Test01 {

public static void main(String[] args) {

int num=0;

for (inti=2 ;i<100;i+=2){

num+=i;

}

System.out.println(num);

}

}

我们这个一百以内没带100,想加上直接在上面for里面换换成i<=100就可以了,别的没什么好说的。

while:

public class Test01 {

public static void main(String[] args) {

//while先声明起始变量,循环初始值

int i=2;

//定义一个num接收和

int num=0;

while (i<100){

num+=i;

i+=2;

}

System.out.println(num);

}

}

结果也是非常完美,想带上100也是while后面换成i<=100

do while:

public class Test01 {

public static void main(String[] args) {

//定义起始变量

int i=0;

int num=0;

do {

num+=i;

i+=2;

}while (i<100);

System.out.println(num);

}

}

也没什么可说的,自己照着过程走一遍就知道了。

练习3:

一张纸0.001米,对折多少次能超过珠峰高度。

public class Test01 {

public static void main(String[] args) {

//接收纸张厚度

double paper=0.001;

//接收珠峰高度

double mountain=8848;

for (int i=1; i>0;i++){

paper=paper*2;

//打出每次折叠的结果,也可以不写,方便查看过程

System.out.println(paper);

if (paper>mountain){

System.out.println("折叠了"+i+"次,超过珠峰时的高度是"+paper);

break;

}

}

}

}

珠峰问题因该是每个编程初学者都完成的问题,也比较简单。

练习4:

键盘录入某学生体育测试100米跑步成绩,成绩在20s内则通过考试,否则提示一周后重新测试。

public class Test01 {

public static void main(String[] args) {

Scanner input = new Scanner(System.in);

System.out.println("请输入100米测试成绩");

//用s接收秒数

double s = input.nextDouble();

if (s<20){

System.out.println("恭喜通过测试");

}

while (s>=20){

System.out.println("请一周后重新测试");

System.out.println("请输入100米测试成绩");

//前面已经声明过了,这里直接来用

s=input.nextDouble();

if (s<20){

System.out.println("恭喜通过重测");

}

}

}

}

这个使用了嵌套稍微复杂一点但也不难。

相关推荐
小张认为的测试2 分钟前
Liunx上Jenkins 持续集成 Java + Maven + TestNG + Allure + Rest-Assured 接口自动化项目
java·ci/cd·jenkins·maven·接口·testng
百流30 分钟前
scala文件编译相关理解
开发语言·学习·scala
蘑菇丁32 分钟前
ansible批量生产kerberos票据,并批量分发到所有其他主机脚本
java·ide·eclipse
呼啦啦啦啦啦啦啦啦1 小时前
【Redis】持久化机制
java·redis·mybatis
Evand J2 小时前
matlab绘图——彩色螺旋图
开发语言·matlab·信息可视化
我想学LINUX2 小时前
【2024年华为OD机试】 (A卷,100分)- 微服务的集成测试(JavaScript&Java & Python&C/C++)
java·c语言·javascript·python·华为od·微服务·集成测试
深度混淆2 小时前
C#,入门教程(04)——Visual Studio 2022 数据编程实例:随机数与组合
开发语言·c#
雁于飞3 小时前
c语言贪吃蛇(极简版,基本能玩)
c语言·开发语言·笔记·学习·其他·课程设计·大作业
wenxin-4 小时前
NS3网络模拟器中如何利用Gnuplot工具像MATLAB一样绘制各类图形?
开发语言·matlab·画图·ns3·lr-wpan