做了一个小型的控制台输出的学生管理系统。比如输入1执行添加学生信息。输入2执行修改学生信息等等。但是执行完一个以后就退出了程序。怎么才能执行完一个再回到起始的提示信息呢。然后还能继续输入1或者2。很无奈。一点思路也没有。希望大家给点思路。我想知道写这样一个程序大概的思路。最后输入10才能退出程序。要不然就一直再运行着程序。执行完一个条件以后就回到起始的选着界面多谢!!!
调试欢乐多
BufferedReader br=new BufferedReader(new InputStream(System.in));
int i=Integer.parseInt(br.next);
while(i!=10){
if(i==1){
.........代码
}
else if(i==2){
.........
}
else {
System.out.println("输入错误");
}
i=br.next();
}
返正就是这思路具体的输入代码我忘了。你自己从书上找去。
然后在循环里等待输入。直到你输入bye程序退出。
flag = true;
do{
switch()
case1...
case2..
case 10:flag = false;
}while(flag);
public static void main(String args[]){
boolean go=true;
while(go){
Scanner scan = new Scanner(System.in);
System.out.println("欢迎来到这里");
System.out.println("1:计算三角形面积");
System.out.println("2:计算四边形面积");
System.out.println("3:猜字游戏");
System.out.println("4:绘制菱形");
System.out.println("5:绘制倒三角形");
System.out.println("6:输入三个数,输出最大跟最小");
System.out.println("0:退出");
int choose = scan.nextInt();
//while(run){
switch(choose){
case 1:{
Scanner scan1 = new Scanner(System.in);
System.out.println("请输入三角形的底");
int a = scan1.nextInt();
System.out.println("请输入三角形的高");
int b = scan1.nextInt();
int c = (a*b)/2;
System.out.println("三角形面积为"+c);
} break;
case 2:{
Scanner scan1 = new Scanner(System.in);
System.out.println("请输入四边形的长");
int a = scan1.nextInt();
System.out.println("请输入四边形的宽");
int b = scan1.nextInt();
int c = (a*b);
System.out.println("四边形面积为"+c);
} break;
case 3:{
System.out.println("请输入一个数猜它是什么");
int name = 20;
Scanner scan1 = new Scanner(System.in);
int pass = scan1.nextInt();
if(pass <name)
System.out.println("您输入的太小了");
else if(pass>name)
System.out.println("您输入的太大了");
else
System.out.println("恭喜您");
} break;
case 4:{
int i;
int j;
int m;
for (m = 7; m > 0; m--) {
{
for (i = 0; i < m; i++) {
System.out.print(" ");
}
System.out.print("*");
for (j = 0; j <= 2 * (7 - m) - 2; j++) {
System.out.print(" ");
}
if (m == 7) {
System.out.println("");
} else
System.out.println("*");
}
}
for (m = 7; m >= 0; m--) {
{
for (i = 7; i > m; i--) {
System.out.print(" ");
}
System.out.print("*");
for (j = 12; j > 2 * (7 - m) - 1; j--) {
System.out.print(" ");
}
if (m == 0) {
System.out.println("");
} else
System.out.println("*");
}
}
}break;
case 5:{
for(int i=0;i <10;i++){
for(int j=0;j <10-i;j++){
if(j>i){
System.out.print("*");
}
else{
System.out.print(" ");
}
}
System.out.println();
}
}break;
case 6:{
int []array=new int[10];
Scanner sc=new Scanner(System.in);
System.out.println("请输入3个数:");
for(int i=0;i <3;i++)
{
array[i]=sc.nextInt();
}
int maxIndex=0;
int max=array[0];
for(int i=0;i <3;i++)
{
if(array[i]>max)
{
max=array[i];
maxIndex=i;
}
}
int min=array[0];
int minIndex=0;
for(int i=0;i <3;i++)
{
if(array[i] <min)
{
min=array[i];
minIndex=i;
}
}
System.out.println("最小值为:array["+minIndex+"]="+array[minIndex]);
System.out.println("最大值为:array["+maxIndex+"]="+array[maxIndex]);
}break;
}
//}
}
}
}
while(str!=exit){}
建议使用面向对象的方式去重构你的代码如果我需要在菜单中增加一个菜单项,如果代码中含有大量的 if...else,或者 switch...case 的话,那这个改动将会很大很大。项目不在于大小,主要是看这个小东西是否有技术含量。