Java If循环语句,学习代码。个人源代码。

 public class xb {
            public static void main(String[] args) {
                java.util.Scanner s = new java.util.Scanner(System.in);

                System.out.println("欢迎使用次系统");
                System.out.println("说明:1.表示下雨,0表示晴天");
                System.out.println("说明1:1表示男,0表示女");
                //接受性别
                System.out.print("请输入性别:");
                int sex = s.nextInt();
                //接受天气状况
                System.out.print("请输入当前天气状况:");
                int weather = s.nextInt();

                //判断天气状况
                if (weather == 1) {
                    //下雨天
                    //System.out.println("下雨天");
                    if (sex == 1) {
                        System.out.println("带一把大黑伞");
                    } else if (sex == 0) {
                        System.out.println("带一把小花伞");
                    } else {
                        System.out.println("对不起,您的性别是怎么回事");
                    }
                } else if (weather == 0) {
                  //接受温度
                    System.out.print("请输入温度:");
                    int tem = s.nextInt();
                    if (tem >= 30) {
                        if (sex == 1) {
                            System.out.println("戴墨镜");
                        } else if (sex == 0) {
                            System.out.println("擦防晒霜");
                        } else {
                            System.out.println("对不起,您的性别是怎么回事");
                        }
                  }else if(tem>16){
                        System.out.println("天气还是比较凉爽");
                    }else {
                        System.out.println("天气太冷了要穿棉衣");
                    }
              }else{
                System.out.println("对不起,您输入的天气不存在");
          }
    }
}
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
生成四元式是编译器前端中的一个关键步骤,四元式一般用于表示程序中的中间代码。在 Java 中,我们可以使用类来表示四元式,该类中包含四个属性,分别表示操作符、操作数1、操作数2和结果。下面是一个简单的示例: ```java public class Quadruple { private String operator; private String operand1; private String operand2; private String result; public Quadruple(String operator, String operand1, String operand2, String result) { this.operator = operator; this.operand1 = operand1; this.operand2 = operand2; this.result = result; } public String getOperator() { return operator; } public String getOperand1() { return operand1; } public String getOperand2() { return operand2; } public String getResult() { return result; } public void setOperator(String operator) { this.operator = operator; } public void setOperand1(String operand1) { this.operand1 = operand1; } public void setOperand2(String operand2) { this.operand2 = operand2; } public void setResult(String result) { this.result = result; } } ``` 在生成四元式的过程中,需要维护一个符号表来记录变量和函数的信息,同时需要对源代码进行词法分析和语法分析。在分析源代码并生成四元式的过程中,需要使用递归下降算法或其他语法分析算法。 下面是一个简单的示例程序,用于计算两个数的和: ```java import java.util.ArrayList; import java.util.List; public class Main { private static int index = 0; private static List<Quadruple> quadruples; private static String[] tokens; public static void main(String[] args) { String source = "int a = 1; int b = 2; int c = a + b;"; tokens = source.split(" "); quadruples = new ArrayList<>(); parse(); for (Quadruple quadruple : quadruples) { System.out.println(quadruple.getOperator() + " " + quadruple.getOperand1() + " " + quadruple.getOperand2() + " " + quadruple.getResult()); } } private static void parse() { while (index < tokens.length) { String token = tokens[index]; if (token.equals("int")) { index++; String name = tokens[index]; index++; if (tokens[index].equals("=")) { index++; String value = tokens[index]; index++; quadruples.add(new Quadruple("=", value, null, name)); } } else if (token.equals(";")) { index++; } else if (token.equals("+")) { index++; String operand1 = tokens[index]; index++; String operand2 = tokens[index]; index++; String result = "t" + quadruples.size(); quadruples.add(new Quadruple("+", operand1, operand2, result)); } else { index++; } } } } ``` 在这个示例程序中,我们使用了一个简单的手写解析器来解析源代码。程序会生成三个四元式,分别表示变量赋值和加法运算。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

never stop learning

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值