代码无错便是优?

   首先给一段简单的计算器的代码,基本上所有的菜鸟都做过的

package com.kiritor;

import java.io.BufferedReader;
import java.io.Console;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Scanner;

/**
 * 一个简单的+,-,*,/运算器
 * 通过控制台进行读入和计算
 * 基于正整数的
 * */
public class Calculator {
   public static void main(String[] args) throws NumberFormatException, IOException {
	System.out.print("请输入第一个数字:");
	BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
	double a = Double.parseDouble(reader.readLine());
	System.out.print("\n请输入第二个数字:");
	double b = Double.parseDouble(reader.readLine());
	System.out.print("\n请输入运算符:");
	String opr = reader.readLine();
	double result=0 ;
	if(opr.equals("+"))
	{
		result = a+b;
	}
	if(opr.equals("-"))
	{
		result =a-b;
	}
	if(opr.equals("*"))
	{
		result = a*b;
	}
	if(opr.equals("/"))
	{
		result = a/b;
	}
    System.out.println("结果为:"+result);
}   
}
    上述代码若按照正确的输入是可以得出正确的结果的,

        不过真的没有问题了吗?

   代码毛病:

          1、变量命名规范

          2、分支判断的地方极不合理,计算机进行了3次无用功的判断!

          3、除法运算被除数为零的情况并未考虑!

          4、用户输入的不确定性,非法输入的处理没有,造成程序的稳定性差!


  代码进一步规范:

  

package com.kiritor;

import java.io.BufferedReader;
import java.io.Console;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Scanner;

/**
 * 一个简单的+,-,*,/运算器 通过控制台进行读入和计算 基于正整数的
 * */
public class Calculator {
	public static void main(String[] args) {
		try {
			System.out.print("请输入第一个数字:");
			BufferedReader reader = new BufferedReader(new InputStreamReader(
					System.in));
			double num1 = Double.parseDouble(reader.readLine());
			System.out.print("\n请输入第二个数字:");
			double num2 = Double.parseDouble(reader.readLine());
			System.out.print("\n请输入运算符:");
			String opr = reader.readLine();
			double result = 0;
			switch (opr) {
			case "+":
				result = num1 + num2;
				System.out.println("结果为:" + result);
				break;
			case "-":
				result = num1 - num2;
				System.out.println("结果为:" + result);
				break;
			case "*":
				result = num1 * num2;
				System.out.println("结果为:" + result);
				break;
			case "/":
				if (num2 == 0) {
					System.out.println("除数不能为零!");
				} else {
					result = num1 / num2;
					System.out.println("结果为:" + result);
				}
				break;
			default:
				break;
			}

		} catch (Exception e) {
			// TODO: handle exception
		}

	}
}

### 如何在Visual Studio中配置和使用MSVC编译器 #### 1. 安装合适的Visual Studio版本 为了确保兼容性和稳定性,建议安装特定版本的Visual Studio。根据引用内容,推荐使用 **Visual Studio Community 2017** 版本[^1]。此版本被广泛验证为与Qt框架以及其他开发工具链良好配合。 可以通过访问微软官方站点下载 Visual Studio Community 2017 的在线安装包,并按照提示完成安装过程。需要注意的是,在安装过程中应选择默认路径以减少潜在冲突的可能性。 #### 2. 下载并安装必要的SDK组件 除了基本IDE外,还需要安装 Windows 10 SDK 来提供底层API支持以及调试功能。具体操作方法是从微软官方网站获取 `.exe` 文件形式的安装程序,并执行标准安装流程。 特别强调一点:在定制化选项界面里务必勾选 `Debugging Tools for Windows` 功能模块,这对于后续可能遇到的各种疑难杂症排查至关重要。 #### 3. 解决中文字符编码问题 当利用 MSVC 编译含有汉字字符串的应用时可能会遭遇乱码现象或构建错误。这通常源于源文件保存格式不匹配目标平台预期所致[^3]。解决办法之一便是调整项目属性中的字符集设定项至“Use Multi-Byte Character Set”,或者更的选择——启用Unicode支持来适配国际化需求场景下的多语言处理能力。 另外一种可行方案是在代码首部加入预处理器指令强制指定UTF-8作为工作区编码方式: ```cpp #pragma execution_character_set("utf-8") ``` 这样能够有效缓解因区域差异引发的一系列棘手状况。 #### 4. Qt Creator 中集成 MSVC 工具链 对于希望借助 Qt 开发环境的朋友来说,正确关联已有的 Microsoft C++ 套件同样重要。一旦成功部署上述提及的各项依赖要素之后,理论上无需手动干预即可让 Qt 自动识别可用的 MSVC 编译单元[^2]。不过假如初次尝试启动新工程时报错缺失某些动态链接库资源的话,则可考虑运用辅助脚本命令如 `windeployqt` 执行自动化复制所需DLL文件的任务以便顺利达成最终产物运行效果评估阶段。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值