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

C#编程:如何访问方法内的参数并在Main主程序中调用使用

C#调用CalculateCost方法获取计算结果的解决方法

原有代码核心问题

  • C#默认采用值传递参数,CalculateCost方法中修改的形参仅在方法内部生效,无法直接传递到Main方法中使用
  • 计算逻辑顺序错误:先执行roomcarp = area * carpet,后计算area = length * width,会导致roomcarp取值永远为初始值0
  • 方法返回值为void,没有向外传递任何计算结果
  • 存在定义后未使用的冗余参数grip

修复后的完整代码

using System;

namespace MyApplication
{
    public class Program
    {
        // 用out修饰参数,将方法内的计算结果向外传递
        static void CalculateCost(out int length, out int width, out int area, 
            out int underly, out int grippers, out int fee, out int carpet, 
            out int roomcarp, out int total) 
        {
            Console.WriteLine("请问您的房间长度是多少?");
            length = Convert.ToInt32(Console.ReadLine());
            
            Console.WriteLine("请问您的房间宽度是多少?");
            width = Convert.ToInt32(Console.ReadLine());
            
            Console.WriteLine("请问您选择的地毯每平方米单价是多少?");
            carpet = Convert.ToInt32(Console.ReadLine());
            
            // 调整计算顺序:先算面积,再算后续费用
            area = length * width;
            roomcarp = area * carpet;
            underly = 3 * area; 
            // 防滑条计算
            grippers = (width * 2) + (length * 2);
            fee = 50;
            total = roomcarp + underly + grippers + fee; 
        }

        public static void Main(string[] args)
        {
            // 先声明接收结果的变量
            CalculateCost(out int length, out int width, out int area, 
                out int underly, out int grippers, out int fee, out int carpet, 
                out int roomcarp, out int total);
            
            // 输出结果,和示例要求格式匹配
            Console.WriteLine($"{length}m×{width}m房间搭配{carpet}英镑地毯总费用为£{roomcarp} + £{underly} + £{grippers} + £{fee} = £{total}");
        }  
    }
}

运行说明

输入测试值:长度7、宽度6、地毯单价17,即可得到示例输出:7m×6m房间搭配17英镑地毯总费用为£714 + £126 + £26 + £50 = £916

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 22:06:04