java第三课 循环案例
发布时间
阅读量:
阅读量
循环案例
- 循环语句
-
-
一、三种循环方式
-
- 1.使用for循环,求出1-100之间的奇数之和.
- 2.使用while循环,求出1-100之间的奇数之和
- 3.do……while循环,求出1-100之间的奇数之和.
-
二、求出1到100之间的既是3的倍数又是5倍数的数字之和.
-
三、从键盘上录入一个大于100的三位数,求出100到该数字之间满足如下要求的数字之和.
-
四、请按如下要求编写程序,打印菜单
-
五、请按如下要求编写程序,打印水仙花数:
-
六、猜数字小游戏
-
七、猜数字小游戏.珠穆朗玛峰高度为8848米,有一张足够大的纸,厚度为0.0001米。请问,我折叠多少次,可以折成珠穆朗玛峰的高度。
-
八 、打印1到100之内的整数,但数字中包含9的要跳过,每行输出5个满足条件的数,之间用空格分隔
-
九 、按照从大到小的顺序输出四位数中的个位+百位=十位+千位(3553,2332,1166,8228,3773)的数字及个数,每行输出5个满足条件的数,之间用空格分隔
-
十、循环录入某学生的5门课程的成绩并计算平均分。如果某分数录入为负,则停止录入并提示录入错误。
-
循环语句
一、三种循环方式
1.使用for循环,求出1-100之间的奇数之和.
public static void main(String[] args) {
int sum=0;
for(int i=1;i<=100;i++){
sum +=i;
}
System.out.println(sum);
}
for循环的执行步骤:1.判断语句先判断;2.执行循环体语句;3.执行控制语句
2.使用while循环,求出1-100之间的奇数之和
public static void main(String[] args){
int i=1;
int sum=0;
while(i<=100){
sum +=i;
i++;
}
System.out.println(sum);
}
3.do……while循环,求出1-100之间的奇数之和.
public static void main(String[] args){
int i=1;
int sum=0;
do{
sum +=i;
i++;
}while(i<=100);
System.out.println(sum);
}
}
二、求出1到100之间的既是3的倍数又是5倍数的数字之和.
public class sum4 {
public static void main(String[] args){
int sum=0;
for(int i=1;i<=100;i++){
if(i%3==0 && i%5==0){
System.out.println("i:"+i);
sum += i;
}
}
System.out.println("sum:"+sum);
}
}
三、从键盘上录入一个大于100的三位数,求出100到该数字之间满足如下要求的数字之和.
1.数字的个位数不为7;
2.数字的十位数不为5;
3.数字的百位数不为3;
import java.util.Scanner;
public class sum5 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个大于100的数字");
int sum=0;
int number = sc.nextInt();
for(int i = 100;i<=number;i++){
if((i%10)!=7 && (i/10%10)!=5 && (i/10/10%10)!=3){
System.out.println(i);
sum +=i;
}
}
System.out.println(sum);
}
}
四、请按如下要求编写程序,打印菜单
从键盘上录入一个1到5的数字;
2.当数字为1时打印菜单"新建";
当数字为2时打印菜单"打开文件";
当数字为3时打印菜单"保存";
当数字为4时打印菜单"刷新";
当数字为5时打印菜单"退出",并退出程序;
此行代码可以终止java程序运行: System.exit(0);
import java.util.Scanner;
public class menu {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
while(true) {
System.out.println("请输入1-5的数字");
int number=sc.nextInt();
switch (number) {
case 1:
System.out.println("新建");
break;
case 2:
System.out.println("打开文件");
break;
case 3:
System.out.println("保存");
break;
case 4:
System.out.println("刷新");
break;
case 5:
System.out.println("退出");
System.exit(0);
}
}
}
}
五、请按如下要求编写程序,打印水仙花数:
2个一行打印水仙花数(中间用空格隔开),最后打印水仙花输的总个数
public class 水仙花数 {
public static void main(String[] args){
int count=0;
for(int i=100;i<1000;i++){
int a=i%10;
int b=i/10%10;
int c=i/10/10%10;
if(a*a*a+b*b*b+c*c*c==i){
count++;
System.out.print("水仙花数:"+i+" ");
if(count%2==0){
System.out.println();
}
}
}
System.out.println("总数:"+count);
}
}
六、猜数字小游戏
系统产生一个1-100之间的随机数,请猜出这个数据是多少?
import java.util.Random;
import java.util.Scanner;
public class caishuzi {
public static void main(String[] args){
Random r=new Random();
int number=r.nextInt(100)+1;
System.out.println("");
for(;;){
Scanner sc=new Scanner(System.in);
System.out.println("请输入数字:");
int number1=sc.nextInt();
if(number1<number){
System.out.println("你猜的数小了");
}else if(number1>number){
System.out.println("你猜的数大了");
}else{
System.out.println("恭喜你,猜对了");
break;
}
}
}
}
七、猜数字小游戏.珠穆朗玛峰高度为8848米,有一张足够大的纸,厚度为0.0001米。请问,我折叠多少次,可以折成珠穆朗玛峰的高度。
public class 折纸 {
public static void main(String[] args){
int count=0;
double paper=0.0001;
for(;;){
if(paper<8848){
paper=paper*2;
count++;
System.out.println("这是第"+count+"次,"+"高度:"+paper);
}else{
System.out.println("总次数"+count);
break;
}
}
}
}
八 、打印1到100之内的整数,但数字中包含9的要跳过,每行输出5个满足条件的数,之间用空格分隔
public class 打印不含9的数字 {
public static void main(String[] args){
int count=0;
for(int i=1;i<=100;i++){
if(i%10!=9 && i/10%10!=9){
System.out.print(i+" ");
count++;
if(count%5==0){
System.out.println();
}
}
}
}
}
九 、按照从大到小的顺序输出四位数中的个位+百位=十位+千位(3553,2332,1166,8228,3773)的数字及个数,每行输出5个满足条件的数,之间用空格分隔
public class 打印四位数 {
public static void main(String[] args){
int count=0;
for(int i=9999;i>=1000;i--){
int ge=i%10;
int shi=i/10%10;
int bai=i/10/10%10;
int qian=i/10/10/10%10;
if(ge+bai==shi+qian){
System.out.print(i+" ");
count++;
if(count%5==0){
System.out.println();
}
}
}
System.out.println("共计:"+count);
}
}
十、循环录入某学生的5门课程的成绩并计算平均分。如果某分数录入为负,则停止录入并提示录入错误。
import java.util.Scanner;
public class 录成绩 {
public static void main(String[] args) {
double sum = 0;
double avg = 0;
String name;
Scanner sc = new Scanner(System.in);
System.out.println("请输入学生姓名:");
name = sc.nextLine();
boolean flag = false;
for (int i = 1; i <= 5; i++) {
System.out.println("请输入数字:");
Double score = sc.nextDouble();
if (score < 0) {
flag=true;
break;
} else {
sum += score;
}
}
if(flag==true){
System.out.println("打印错误");
}else{
System.out.println("总和:" + sum);
avg = sum / 5;
System.out.println("平均数:" + avg);
}
}
}
全部评论 (0)
还没有任何评论哟~
