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

C#新手作业求助:基于while循环实现输入数字至F/Q终止的求和方案

问题解答:基于while循环的数字求和程序

嘿,作为C#新手能主动上手写代码已经超棒啦!先给你明确答案:这两项作业要求完全合理,都是非常适合新手的基础练习——专门练while循环控制、输入处理和数值累加这些核心入门知识点,用来巩固基础再合适不过~

一、你的代码存在的几个关键问题

我帮你梳理下现有代码里的小坑:

  • 变量未初始化:string Number和double Shuma都没赋初始值,C#里局部变量必须初始化才能用,直接跑会编译报错
  • 变量名拼写混乱:定义的变量是Number,后面却用了Numri,这会直接触发编译错误
  • 输入逻辑顺序错了:你直接把输入转成double,但没先判断是不是终止字符F;而且如果用户输入非数字非F的内容,程序会直接崩溃
  • 循环条件有漏洞:第一次进循环时Number还没赋值,会直接报错

二、修正后的解决方案

我给你写了两个符合要求的健壮版本,还加了异常输入处理,避免程序崩溃:

版本1:输入'F'(不区分大小写)时停止并求和

using System;

namespace DetyratSharp
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            // 初始化总和为0,局部变量必须先赋值
            double totalSum = 0;
            string userInput;

            Console.WriteLine("请输入数字,输入'F'(大小写都行)结束程序:");
            
            // 用无限循环,内部判断终止条件更灵活
            while (true)
            {
                // 接收输入并去掉前后空格,处理空输入情况
                userInput = Console.ReadLine()?.Trim() ?? string.Empty;

                // 判断是否触发终止条件
                if (userInput.Equals("F", StringComparison.OrdinalIgnoreCase))
                {
                    break; // 跳出循环
                }

                // 安全转换输入为数字,避免崩溃
                if (double.TryParse(userInput, out double inputNumber))
                {
                    totalSum += inputNumber; // 累加有效数字
                }
                else
                {
                    Console.WriteLine("输入无效哦,请输入数字或'F'结束程序:");
                }
            }

            Console.WriteLine($"所有输入数字的总和为:{totalSum}");
        }
    }
}

版本2:输入'Q'(不区分大小写)时停止并求和

只需要把终止字符的判断改成"Q"就行,其他逻辑完全一致:

// 替换原终止判断的代码即可
if (userInput.Equals("Q", StringComparison.OrdinalIgnoreCase))
{
    break;
}

三、代码细节说明

  • while(true)无限循环:比直接判断输入更灵活,我们可以在循环内部根据条件主动退出
  • StringComparison.OrdinalIgnoreCase:让终止字符不区分大小写(输入'f'/'F'、'q'/'Q'都能触发停止),提升用户体验
  • double.TryParse:安全的类型转换方法,不会因为输入无效而崩溃,只有转换成功才会累加数值
  • ?.Trim() ?? string.Empty:处理用户输入空格或直接回车的情况,避免空引用异常

这样的代码既完全符合作业要求,又能应对各种异常输入,稳定性拉满~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 23:04:06