Java里面的while循环输出对应的星期问题?代码如下;
importjava.util.*;publicclassDate{/***题目如下:**从键盘输入一位整数,当输入1-7位时,显示下面对应的英文星期名称的缩写。*输入其...
import java.util.*;
public class Date {
/**
* 题目如下:
*
*从键盘输入一位整数,当输入1-7位时,显示下面对应的英文星期名称的缩写。
*输入其他数字时提示用户重新输入,输入数字0时程序结束。
*
*例如:
*
*请输入数字1-7(输入0结束):1
*星期一
*请输入数字1-7(输入0结束):2
*星期二
*......
*请输入数字1-7(输入0结束):0
*程序结束
*
*/
/*下面是个死循环了*/
public static void main(String[] args) {
// TODO 自动生成方法存根
int num;
String day = "";
Scanner input = new Scanner(System.in);
System.out.print("请输入数字1-3(输入0结束):");
num = input.nextInt();
do{
switch (num) {
case 1:
day = "星期一";
System.out.println("今天是:" + day);
continue;
case 2:
day = "星期二";
System.out.println("今天是:" + day);
continue;
case 3:
day = "星期三";
System.out.println("今天是:" + day);
continue;
default:
System.out.print("请重新输入:");
num = input.nextInt();
continue;
}
}while(num != 0);
System.out.println("程序结束");
}
} 展开
public class Date {
/**
* 题目如下:
*
*从键盘输入一位整数,当输入1-7位时,显示下面对应的英文星期名称的缩写。
*输入其他数字时提示用户重新输入,输入数字0时程序结束。
*
*例如:
*
*请输入数字1-7(输入0结束):1
*星期一
*请输入数字1-7(输入0结束):2
*星期二
*......
*请输入数字1-7(输入0结束):0
*程序结束
*
*/
/*下面是个死循环了*/
public static void main(String[] args) {
// TODO 自动生成方法存根
int num;
String day = "";
Scanner input = new Scanner(System.in);
System.out.print("请输入数字1-3(输入0结束):");
num = input.nextInt();
do{
switch (num) {
case 1:
day = "星期一";
System.out.println("今天是:" + day);
continue;
case 2:
day = "星期二";
System.out.println("今天是:" + day);
continue;
case 3:
day = "星期三";
System.out.println("今天是:" + day);
continue;
default:
System.out.print("请重新输入:");
num = input.nextInt();
continue;
}
}while(num != 0);
System.out.println("程序结束");
}
} 展开
6个回答
展开全部
import java.util.*;
public class Test {
public static void main(String[] args) {
// TODO 自动生成方法存根谨冲
int num;
String day = ""宏晌瞎;
Scanner input = new Scanner(System.in);
do{
System.out.print("请输入数蔽空字1-3(输入0结束):");
num = input.nextInt();
switch (num) {
case 1:
day = "星期一";
System.out.println("今天是:" + day);
continue;
case 2:
day = "星期二";
System.out.println("今天是:" + day);
continue;
case 3:
day = "星期三";
System.out.println("今天是:" + day);
continue;
case 0:
break;
default:
System.out.print("请重新输入:");
num = input.nextInt();
continue;
}
}while(num != 0);
System.out.println("程序结束");
}
}
public class Test {
public static void main(String[] args) {
// TODO 自动生成方法存根谨冲
int num;
String day = ""宏晌瞎;
Scanner input = new Scanner(System.in);
do{
System.out.print("请输入数蔽空字1-3(输入0结束):");
num = input.nextInt();
switch (num) {
case 1:
day = "星期一";
System.out.println("今天是:" + day);
continue;
case 2:
day = "星期二";
System.out.println("今天是:" + day);
continue;
case 3:
day = "星期三";
System.out.println("今天是:" + day);
continue;
case 0:
break;
default:
System.out.print("请重新输入:");
num = input.nextInt();
continue;
}
}while(num != 0);
System.out.println("程序结束");
}
}
展开全部
public static void main(String[] args) {
// TODO 自动生成方法存根
int num;
String day = "";
Scanner input = new Scanner(System.in);
do{
System.out.print("请输入数字1-3(输入0结束):");
num = input.nextInt();
switch (num) {
case 1:
day = "星期一";
System.out.println("今天是返枝:" + day);
break;
case 2:
day = "星期二";
System.out.println("今天是:" + day);
break;
case 3:
day = "星期三";
System.out.println("今天是:" + day);
break;
default:
System.out.print("桐伏请重新输入:");
num = input.nextInt();
break;
}
}while(num != 0);
System.out.println("程序结束");
}
问题在于你在while外面赋值之后,没在循环里面赋值,所以一直是一个数反复循环,造成漏轮敏死循环
// TODO 自动生成方法存根
int num;
String day = "";
Scanner input = new Scanner(System.in);
do{
System.out.print("请输入数字1-3(输入0结束):");
num = input.nextInt();
switch (num) {
case 1:
day = "星期一";
System.out.println("今天是返枝:" + day);
break;
case 2:
day = "星期二";
System.out.println("今天是:" + day);
break;
case 3:
day = "星期三";
System.out.println("今天是:" + day);
break;
default:
System.out.print("桐伏请重新输入:");
num = input.nextInt();
break;
}
}while(num != 0);
System.out.println("程序结束");
}
问题在于你在while外面赋值之后,没在循环里面赋值,所以一直是一个数反复循环,造成漏轮敏死循环
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public static void main(String[] args) {
int num;
String day = "";
Scanner input = new Scanner(System.in);
do{
System.out.print("请输碰消入数字1-3(输入0结束):");
num = input.nextInt();
switch (num) {
case 1:
day = "星期一";
System.out.println("今天是:" + day);
break;
case 2:
day = "星期二";
System.out.println("今天是:" + day);
break;
case 3:
day = "星凯喊期三";
System.out.println("今天是:" + day);
break;
case 0:
break;
default:
System.out.print("请重新输入:");
num = input.nextInt();
break;
}
}while(num != 0);
System.out.println("程序结束"盯吵野);
}
int num;
String day = "";
Scanner input = new Scanner(System.in);
do{
System.out.print("请输碰消入数字1-3(输入0结束):");
num = input.nextInt();
switch (num) {
case 1:
day = "星期一";
System.out.println("今天是:" + day);
break;
case 2:
day = "星期二";
System.out.println("今天是:" + day);
break;
case 3:
day = "星凯喊期三";
System.out.println("今天是:" + day);
break;
case 0:
break;
default:
System.out.print("请重新输入:");
num = input.nextInt();
break;
}
}while(num != 0);
System.out.println("程序结束"盯吵野);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你不是要显示英文缩写吗闷此明?我也没见缩写在哪里,就看见中文了.....
你不是要1-7吗?怎么又写成1-3了?.....
你先用一个数组保存String [] weekNames={"Mon","蚂告Tue","Wed","Thu","Fri","Sat","Sun"};
不用switch-case语句
while(true){
if(num>=1&&num<=7)
System.out.println(weekNames[num-1]);
else if(num>7||num<0)
System.out.println("重新输扒罩入..");
else //num==0
break;
}
你不是要1-7吗?怎么又写成1-3了?.....
你先用一个数组保存String [] weekNames={"Mon","蚂告Tue","Wed","Thu","Fri","Sat","Sun"};
不用switch-case语句
while(true){
if(num>=1&&num<=7)
System.out.println(weekNames[num-1]);
else if(num>7||num<0)
System.out.println("重新输扒罩入..");
else //num==0
break;
}
追问
可以不可以不用数组,就用whil循环?
追答
当然可以,但是你不觉得很烦人吗
你得为1-7写7个语句,重复且相似
我给你写的方法是最佳的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
case X:
day = "XXX";
System.out.println("今天枝槐是念搭渣仔悄:" + day);
continue;
continue改为break~~
day = "XXX";
System.out.println("今天枝槐是念搭渣仔悄:" + day);
continue;
continue改为break~~
追问
放到哪个外面?那循环还如何进行?
追答
其实你那个按2楼所说,把do放到system.out.print("请输入数字1-3(输入0结束):");前面
然后在case语句加个case 0:break;
就可以了
不需要改动太多的...
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询