You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#保险报价程序条件判断异常:输入No仍执行加75操作求助

问题分析与修正方案

你的核心问题是条件判断逻辑错误——大概率是把相等判断运算符==写成了赋值运算符=,或是未处理输入的大小写/缩写匹配,导致无论输入Y/N都会执行加75的操作。以下是针对性的修正方案:

核心判断逻辑修正

错误代码示例(推测)

// 错误:用赋值=替代了判断==,条件永远为true
string smokerStatus = Console.ReadLine();
if (smokerStatus = "Y") 
{
    BaseQuote +=75;
}
else if (smokerStatus = "N")
{
    BaseQuote -=100;
}

修正后的代码

// 吸烟状态判断:统一转小写处理,覆盖Y/Yes、N/No的大小写输入
string smokerStatus = Console.ReadLine().Trim().ToLower();
if (smokerStatus == "y" || smokerStatus == "yes")
{
    BaseQuote += 75;
}
else if (smokerStatus == "n" || smokerStatus == "no")
{
    BaseQuote -= 100;
}
else
{
    Console.WriteLine("输入无效,请输入Y/Yes或N/No");
}

// 健康状况判断逻辑完全一致
string conditionStatus = Console.ReadLine().Trim().ToLower();
if (conditionStatus == "y" || conditionStatus == "yes")
{
    BaseQuote += 75;
}
else if (conditionStatus == "n" || conditionStatus == "no")
{
    BaseQuote -= 100;
}
else
{
    Console.WriteLine("输入无效,请输入Y/Yes或N/No");
}

关键修正点

  • 用==做相等判断,而非=(=是赋值操作,会让条件恒为true)
  • 调用ToLower()统一转换输入为小写,避免大小写不匹配(比如"Y"和"y"都能被识别)
  • 明确分支逻辑:匹配Y/Yes时加75,匹配N/No时减100,添加无效输入提示

完整可运行程序示例

using System;

class InsuranceQuoteCalculator
{
    static void Main()
    {
        decimal baseQuote = 500; // 基础报价初始值

        // 吸烟状态输入处理
        Console.WriteLine("请输入吸烟状态(Y/Yes 或 N/No):");
        string smokerInput = Console.ReadLine().Trim().ToLower();
        UpdateQuote(ref baseQuote, smokerInput);

        // 健康状况输入处理
        Console.WriteLine("请输入健康状况(Y/Yes表示有既往病史,N/No表示无):");
        string healthInput = Console.ReadLine().Trim().ToLower();
        UpdateQuote(ref baseQuote, healthInput);

        Console.WriteLine($"最终保险报价:{baseQuote:C}");
    }

    // 提取重复逻辑为复用方法,减少冗余
    static void UpdateQuote(ref decimal quote, string input)
    {
        if (input == "y" || input == "yes")
        {
            quote += 75;
        }
        else if (input == "n" || input == "no")
        {
            quote -= 100;
        }
        else
        {
            Console.WriteLine("输入无效,未修改报价");
        }
    }
}

内容的提问来源于stack exchange,提问作者DrHelix

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 02:12:34