Java 循环语句练习题(1)
1、for循环输出1 到100
package com.hz.loop;
/**
* 1、for循环输出1 到100
* @author ztw
*
*/
public class Practice01 {
public static void main(String[] args) {
for(int i=1;i<=100;i++){
System.out.println(i);
}
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
2、while循环输出1-100
package com.hz.loop;
/**
* 2、while循环输出1-100
* @author ztw
*
*/
public class Practice02 {
public static void main(String[] args) {
int i=1;
while(i<=100){
System.out.println(i);
i++;
}
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
3、循环输出以下结果:
2*5=10
4*10=40
6*15=90
……
?*100=?
package com.hz.loop;
/**
* 3、循环输出以下结果:
* 2*5=10
* 4*10=40
* 6*15=90
* ……
* ?*100=?
* @author ztw
*
*/
public class Practice03 {
public static void main(String[] args) {
/*
* 可以看做是乘数和被乘数以每次递增2和5的一种规则变化
*/
int a=2;
int b=5;
do{
System.out.println(a+" * "+b+" = "+(a*b));
a=a+2;
b=b+5;
}
while(b<=100);
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
4、要求用户输入一个0到2之间的整数,
如果用户输入0输出“你出的是石头”,
如果用户输入1就输出“你出的是剪刀”,
如果用户输入的是2就输出“你出的是布”,
然后再问是否要继续出拳,
如果回答“y”就重复以上过程,
否则结束程序。
package com.hz.loop;
import java.util.Scanner;
/**
* 4、要求用户输入一个0到2之间的整数,
* 如果用户输入0输出“你出的是石头”,
* 如果用户输入1就输出“你出的是剪刀”,
* 如果用户输入的是2就输出“你出的是布”,
* 然后再问是否要继续出拳,
* 如果回答“y”就重复以上过程,否则结束程序。
* @author ztw
*
*/
public class Practice04 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("输入一个0到2之间的整数:");
int number = sc.nextInt();
for(;;){
if(number>=0&&number<=2){
//定义一个switch语句判断输出对应的值
switch(number){
case 0:
System.out.println("你出的是石头");
break;
case 1:
System.out.println("你出的是剪刀");
break;
case 2:
System.out.println("你出的是布");
break;
default:
break;
}
System.out.println("然后再问是否要继续出拳?(y/?)");
String choice = sc.next();
if(choice.equals("y")||choice.equals("Y")){
}else{
break;
}
}else{
System.out.println("请输入一个0到2之间的整数!");
}
}
}
}
-
import java.util.Scanner;
import javax.swing.text.html.CSS;
public class testt {
public static void main(String[] args) {
int number;
String choice = "";
Scanner sc = new Scanner(System.in);
float x, y,result;
do {
System.out.print("请输入第一个数:");
x=sc.nextFloat();
System.out.print("请输入第二个数:");
y=sc.nextFloat();
System.out.println("请输入每个选项前对应的数字");
System.out.println("1.加法");
System.out.println("2.减法");
System.out.println("3.乘法");
System.out.println("4.除法");
number = sc.nextInt();
if (number >= 1 && number < 5) {
switch (number) {
case 1:
result=x+y;
System.out.println(x+" + "+ y+" = "+result);
break;
case 2:
result=x-y;
System.out.println(x+" - "+ y+" = "+result);
break;
case 3:
result=x*y;
System.out.println(x+" * "+ y+" = "+result);
break;
case 4:
if(y==0)
{
System.out.println("除数不能为0");
}
else {
result=x/y;
System.out.println(x+" / "+ y+" = "+result);
}
break;
default:
break;
}
} else {
System.out.print("请输入正确的数字\n");
}
System.out.print("如果想继续请输入y:");
choice = sc.next();} while (choice.equals("y") || choice.equals("Y"));
System.out.print("已退出");
}
}
5、让计算机随机产生10个0到2之间的数,
如果产生的是0就输出“生成了一只白猪,我好怕怕”,
如果产生的是1就输出“生成了一只黑猪,我喜欢”
如果产生的是2就输出“生成了一只红猪,有下酒菜了”。
package com.hz.loop;
import java.util.Random;
/**
* 5、让计算机随机产生10个0到2之间的数,
* 如果产生的是0就输出“生成了一只白猪,我好怕怕”,
* 如果产生的是1就输出“生成了一只黑猪,我喜欢”
* 如果产生的是2就输出“生成了一只红猪,有下酒菜了”。
* @author ztw
*
*/
public class Practice05 {
public static void main(String[] args) {
Random rd = new Random();
//让计算机随机产生10个0到2之间的数
for(int i=0;i<10;i++){
int number = rd.nextInt(2);
switch(number){
case 0:
System.out.println("生成了一只白猪,我好怕怕");
break;
case 1:
System.out.println("生成了一只黑猪,我喜欢");
break;
case 2:
System.out.println("生成了一只红猪,有下酒菜了");
break;
default:
break;
}
}
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
6、计算2000年1月1日到2008年1月1日相距多少天。(注意闰年)
package com.hz.loop;
/**
*
* 6、计算2000年1月1日到2008年1月1日相距多少天。(注意闰年)
*
* @author ztw
*
*/
public class Practice06 {
public static void main(String[] args) {
int sum = 0;
int day;
for(int i=2000;i<2008;i++){
//判断该年份是否是闰年
if((i%4==0&&i%100!=0)||(i%400==0)){
day=366;
}else{
day=365;
}
sum = sum+day;
}
System.out.println(sum);
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
7、循环输入大于0的数字进行累加,直到输入的数字为0,就结束循环,并最后输出累加的结果。
package com.hz.loop;
import java.util.Scanner;
/**
* 7、循环输入大于0的数字进行累加,直到输入的数字为0,就结束循环,并最后输出累加的结果。
* @author ztw
*
*/
public class Practice07 {
public static void main(String[] args) {
int sum = 0;
Scanner sc = new Scanner(System.in);
//循环输出
while(true){
System.out.println("请输入一个数:");
int number = sc.nextInt();
if(number==0){
break;
}else{
sum = sum+number;
}
}
System.out.println("累加的结果:"+sum);
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
8、我行我素购物管理系统>生日问候
请输入今天的日期(月/日<用两位数表示:): 05/29
请输入客户生日:08/09
然后判断是否今天生日
是否继续(y/n)
如果是y就重复以上步骤,否则退出程序*/
package com.hz.loop;
import java.util.Scanner;
/**
* 8、我行我素购物管理系统>生日问候
* 请输入今天的日期(月/日<用两位数表示:): 05/29
* 请输入客户生日:08/09
* 然后判断是否今天生日是否继续(y/n)
* 如果是y就重复以上步骤,否则退出程序
* @author ztw
*
*/
public class Practice08 {
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
for(;;){
System.out.println("请输入今天的日期(月/日<用两位数表示:):");
String toDay = sc.next();
System.out.println("请输入客户生日:");
String brithday = sc.next();
if(toDay.equals(brithday)){
System.out.println("生日快乐,送你一个华为手机!");
break;
}
System.out.println("然后判断是否今天生日是否继续(y/n):");
String choice = sc.next();
if(choice.equals("y")||choice.equals("Y")){
}else{
break;
}
}
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
9、计算用户输入的日期离1900年1月1日相距多少天。(注意闰年,每个月份天数不一样)
package com.hz.loop;
import java.util.Scanner;
/**
* 9、计算用户输入的日期离1900年1月1日相距多少天。(注意闰年,每个月份天数不一样)
* @author ztw
*
*/
public class Practice09 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入年份:");
//定义用户输入年份的变量year
int year = sc.nextInt();
System.out.println("请输入月份:");
//定义用户输入月份的变量month
int month = sc.nextInt();
//定义一个初始化变量sum表示相距0天
int sum = 0;
for(int i=1900;i<year;i++){
//判断输入的年份是否为闰年
if((i%4==0&&i%100!=0)||(i%400==0)){
sum+=366;
}else{
sum+=365;
}
}
for(int i=1;i<month;i++){
//判断输入的月份是否为大月
if(i==1||i==3||i==5||i==7||i==8){
sum+=31;
}else if(i==2){
//判断输入的年份是否为闰年
if((year%4==0&&year%100!=0)||year%400==0){
sum+=29;
}else{
sum+=28;
}
//不是大月
}else{
sum+=30;
}
}
//输出计算结果
System.out.println("用户输入的日期离1900年1月1日相距"+sum+"天");
}
}