练习:19

原题目:
从键盘输入一个整数,当输入1~7时,显示下面对应的英文星期名称和缩写.
1:MON 2:TUE 3:WED 4:THU 5:FRI 6:SAT 7:SUN
输入其他数字时提示用户重新输入,输入数字0时程序结束.

分别用了while,do-while,for循环结构来做这道题,源代码如下(在使用for循环的时候,假设for循环的条件也是0,那么循环将不会被执行,因此若需要停止for循环,输入10即可):

import java.util.*;
public class P120_5{
public static void main (String[]args){
Scanner input = new Scanner (System.in);
int num = 1 ;//定义用户输入的数字
int day = 0 ;//定义天数
while ( num!=0 ){ //定义当用户输入0时,结束循环
System.out.println("请输入数字1~7(输入0结束)(while循环):");
num = input.nextInt();//录入用户输入的数字
day = num ; //将num的值赋给day
if ( num =1 ){ //当用户输入的数字正确时,提示文字,否则提示错误,执行下一次循环
switch (day){
case 1 :
System.out.println("今天是:MON");
break;
case 2 :
System.out.println("今天是:TUE");
break;
case 3 :
System.out.println("今天是:WED");
break;
case 4 :
System.out.println("今天是:THU");
break;
case 5 :
System.out.println("今天是:FRI");
break;
case 6 :
System.out.println("今天是:SAT");
break;
case 7 :
System.out.println("今天是:SUN");
break;
}
}
else if ( num !=0 ) {//当值为0时,不再执行错误的提示
System.out.println("*************************");
System.out.println("数字输入错误,请重新输入!");
System.out.println("*************************");
continue; //跳转标签,当条件不符合本次循环时,跳出本次循环,执行下一次循环
}
}
System.out.println("while循环结束!下面是do-while循环结构所写的代码");
System.out.println("***********do-while循环开始**************");
do {
System.out.println("请输入数字1~7(输入0结束)(do-while循环):");
num = input.nextInt();//录入用户输入的数字
day = num ; //将num的值赋给day
if ( num =1 ){ //当用户输入的数字正确时,提示文字,否则提示错误,执行下一次循环
switch (day){
case 1 :
System.out.println("今天是:MON");
break;
case 2 :
System.out.println("今天是:TUE");
break;
case 3 :
System.out.println("今天是:WED");
break;
case 4 :
System.out.println("今天是:THU");
break;
case 5 :
System.out.println("今天是:FRI");
break;
case 6 :
System.out.println("今天是:SAT");
break;
case 7 :
System.out.println("今天是:SUN");
break;
}
}
else if ( num !=0 ) {//当值为0时,不再执行错误的提示
System.out.println("*************************");
System.out.println("数字输入错误,请重新输入!");
System.out.println("*************************");
continue; //跳转标签,当条件不符合本次循环时,跳出本次循环,执行下一次循环
}
} while ( num!=0 );
System.out.println("*************************");
System.out.println("do-while循环结束!下面是for循环结构所写的代码:");
System.out.println("*************************");
for ( ; num!=10; ){
System.out.println("请输入数字1~7(输入10结束)(for循环):");
num = input.nextInt();//录入用户输入的数字
day = num ; //将num的值赋给day
if ( num =1 ){ //当用户输入的数字正确时,提示文字,否则提示错误,执行下一次循环
switch (day){
case 1 :
System.out.println("今天是:MON");
break;
case 2 :
System.out.println("今天是:TUE");
break;
case 3 :
System.out.println("今天是:WED");
break;
case 4 :
System.out.println("今天是:THU");
break;
case 5 :
System.out.println("今天是:FRI");
break;
case 6 :
System.out.println("今天是:SAT");
break;
case 7 :
System.out.println("今天是:SUN");
break;
}
}
else if ( num !=10 ) {//当值为0时,不再执行错误的提示
System.out.println("*************************");
System.out.println("数字输入错误,请重新输入!");
System.out.println("*************************");
continue; //跳转标签,当条件不符合本次循环时,跳出本次循环,执行下一次循环
}
}
System.out.println("for循环结束!");
System.out.println("*******************");
System.out.println("程序结束!");
}
}

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据