java初学者的问题,如何if套if

问题是这样,需要编写一个可键盘输入的会员信息系统,会员帐号必须是4位,如果输入的不是4位数,系统就要出现会员号输入错误,请重新输入,如果会员号输入的是4位数,就会随机抽奖... 问题是这样,需要编写一个可键盘输入的会员信息系统,会员帐号必须是4位,如果输入的不是4位数,系统就要出现会员号输入错误,请重新输入,如果会员号输入的是4位数,就会随机抽奖,抽出的号码和会员号百位数一样就中奖 ,否则不中奖。

现在的问题是这样的,如果我第一个if判定会员输入4位数正确,就会触发下一个if,判定是否中奖,现在我出现的问题就是无法if套if,想问问如何解决,各位大神帮帮我,我是初学,不知道去哪找答案,还有能顺道推荐一个比较好的JAVA学习网站最好。多谢

代码如下,是错误的,求正确代码

import java.util.Scanner;

public class huiyanxinxi {
public static void main(String args[]) {
System.out.println("我行我素购物管理系统>客户信息管理>添加客户信息");
System.out.println("\n\n\n请输入会员号(4位整数):");
Scanner in=new Scanner(System.in);
int num1=in.nextInt();
System.out.println("请输入 会员生日(月/日)");
String shengri=in.next();
System.out.println("请输入积分:");
int num2=in.nextInt();
if(num1>=1000&&num1<=9999){
System.out.println("已录入会员信息为:");
System.out.println("会员号:"+num1+"\t会员生日:"+shengri+"\t会员积分为:"+num2);
}
int baiwei=num1/100%10;
int zjhm=(int)(Math.random()*10+1);
System.out.println("中奖号码为:"+zhongjianghaoma);
if(baiwei==zjhm){
System.out.println("恭喜你,获得兰博基尼一辆!!!");
}else{
System.out.println("不好意思毛也没有!");
}
else
{
System.out.println("会员号输入错误,请重新输入");}
}

}

显示有错,我也知道有错,不过我想实现我的目的的话,应该怎么编写??可否if套if?? 请别用太高深的办法解决,我刚学习第三天,谢谢谢谢
展开
 我来答
野文菜A
2014-08-02 · TA获得超过830个赞
知道小有建树答主
回答量:645
采纳率:100%
帮助的人:510万
展开全部
可以再外围加个while判断输入是否正确,输入错误就提示重新输入,只有输入正确才进入if,像这样:
import java.util.Scanner;

public class Test25 {
public static void main(String args[]) {

while (true) {
System.out.println("我行我素购物管理系统>客户信息管理>添加客户信息");
System.out.println("\n\n\n请输入会员号(4位整数):");
Scanner in = new Scanner(System.in);
int num1 = in.nextInt();

if (num1 >= 1000 && num1 <= 9999) {
System.out.println("请输入 会员生日(月/日)");
String shengri = in.next();
System.out.println("请输入积分:");
int num2 = in.nextInt();

System.out.println("已录入会员信息为:");
System.out.println("会员号:" + num1 + "\t会员生日:" + shengri
+ "\t会员积分为:" + num2);

int baiwei = num1 / 100 % 10;
int zjhm = (int) (Math.random() * 10 + 1);
System.out.println("中奖号码为:" + baiwei);

if (baiwei == zjhm)
System.out.println();
else
System.out.println("不好意思毛也没有!");

}
else{
System.out.println("输入错误,请重试")
continue;
}
}
}
}

三天能写出这样,挺不错啊
无箭的丘比特
2014-08-02 · TA获得超过2084个赞
知道小有建树答主
回答量:2047
采纳率:50%
帮助的人:1074万
展开全部
public static void main(String args[]) {
System.out.println("我行我素购物管理系统>客户信息管理>添加客户信息");
System.out.println("\n\n\n请输入员号(4位整数):");
Scanner in = new Scanner(System.in);
int num1 = in.nextInt();
if (num1 >= 1000 && num1 <= 9999) {
System.out.println("请输入 员(月/)");
String shengri = in.next();
System.out.println("请输入积:");
int num2 = in.nextInt();
System.out.println("已录入员信息:");
System.out.println("员号:" + num1 + "\t员:" + shengri + "\t员积:" + num2);
int baiwei = num1 / 100 % 10;
int zjhm = (int) (Math.random() * 10 + 1);
System.out.println("中奖号码:"+zjhm);
if (baiwei == zjhm) {
System.out.println("恭喜获兰博基尼辆");
} else {
System.out.println("意思毛没");
}
} else {
System.out.println("员号输入错误请重新输入");
}
in.close();
}

如果单纯把你的代码改正确,可以改成这样。但是这个功能实现的十分简陋。

三天能学出这水平,你已经比很多人强了。加油!

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yyq2012aa
2014-08-02 · 超过56用户采纳过TA的回答
知道小有建树答主
回答量:107
采纳率:0%
帮助的人:130万
展开全部
第一种:
if(条件1){
// 处理条件1的情况
// 这里面也可以有多个if-else
}else{
// 处理非条件1的情况
// 这里面也可以有多个if-else
}

第二种:
if(条件1){
// 处理条件1
}else if(条件2){
// 处理条件2
}....

else{ // 最后一个else,就是非以上所以条件的情况
//处理不满足以上所有条件的情况。
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sdumpling
推荐于2017-09-23
知道答主
回答量:5
采纳率:0%
帮助的人:4.9万
展开全部
/*1.应将第16行的花括号移至第24行末。
2.应将第19行zhongjianghaoma改为zjhm。*/

import java.util.Scanner;

public class huiyanxinxi {
public static void main(String args[]) {
System.out.println("我行我素购物管理系统>客户信息管理>添加客户信息");
System.out.println("\n\n\n请输入会员号(4位整数):");
Scanner in=new Scanner(System.in);
int num1=in.nextInt();
System.out.println("请输入 会员生日(月/日)");
String shengri=in.next();
System.out.println("请输入积分:");
int num2=in.nextInt();
if(num1>=1000&&num1<=9999){
System.out.println("已录入会员信息为:");
System.out.println("会员号:"+num1+"\t会员生日:"+shengri+"\t会员积分为:"+num2);
int baiwei=num1/100%10;
int zjhm=(int)(Math.random()*10+1);
System.out.println("中奖号码为:"+zjhm);
if(baiwei==zjhm){
System.out.println("恭喜你,获得兰博基尼一辆!!!");
}else{
System.out.println("不好意思毛也没有!");
}
}else{
System.out.println("会员号输入错误,请重新输入");}
}
}

//建议在提问前,先把每个相对的括号看好,编程中的错误往往是粗心大意造成的。。
//还有楼主的类和变量的命名不太规范,还有要把英语学好,少用拼音。。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式