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

C#循环录入食材信息至数组并打印的实现方法

C#循环录入食材信息至数组并打印的实现方法

嘿,我来帮你搞定这个需求!你需要循环收集食材的名称、数量和单位,把它们存在数组里,之后再全部打印出来对吧?直接存单个字符串肯定不方便,我们可以先封装一个Ingredient类来统一管理每个食材的三个属性,这样代码更清晰易维护。

步骤1:定义食材类

首先创建一个简单的类,用来存储每个食材的完整信息:

public class Ingredient
{
    public string Name { get; set; }
    public int Quantity { get; set; } // 如果需要支持小数可以改成decimal类型
    public string Unit { get; set; }
}

步骤2:循环录入数据到数组

接下来在Main方法里,我们先让用户输入要录入的食材总数,然后创建对应长度的数组,接着循环逐个收集信息:

using System;

class Program
{
    static void Main()
    {
        Console.Write("请输入要录入的食材数量:");
        // 做个简单校验,确保用户输入的是有效数字
        if (!int.TryParse(Console.ReadLine(), out int ingredientCount))
        {
            Console.WriteLine("输入无效,请输入数字!");
            return;
        }

        // 创建对应长度的食材数组
        Ingredient[] ingredients = new Ingredient[ingredientCount];

        for (int i = 0; i < ingredientCount; i++)
        {
            Console.WriteLine($"\n===== 录入第 {i + 1} 种食材 =====");
            
            // 录入食材名称
            Console.WriteLine("Enter name of ingredient " + (i + 1) + ":");
            string name = Console.ReadLine();

            // 录入食材数量(增加循环校验,避免无效输入)
            int quantity = 0;
            while (true)
            {
                Console.WriteLine($"Enter quantity of {name} :");
                if (int.TryParse(Console.ReadLine(), out quantity))
                {
                    break;
                }
                Console.WriteLine("请输入有效的数字!");
            }

            // 录入计量单位
            Console.WriteLine($"Enter unit of measurement for {name} :");
            string unit = Console.ReadLine();

            // 将录入的信息存入数组
            ingredients[i] = new Ingredient
            {
                Name = name,
                Quantity = quantity,
                Unit = unit
            };
        }

步骤3:打印数组中所有食材信息

录入完成后,我们循环遍历数组,把每个食材的信息都清晰打印出来:

Console.WriteLine("\n===== 已录入的食材清单 =====");
        for (int i = 0; i < ingredients.Length; i++)
        {
            Ingredient ing = ingredients[i];
            Console.WriteLine($"食材 {i + 1}:{ing.Quantity} {ing.Unit} 的 {ing.Name}");
        }

        Console.ReadLine();
    }
}

额外小提示

如果不确定要录入的食材数量,或者后续可能需要动态添加食材,用List<Ingredient>会比数组更灵活——只需要把数组换成List<Ingredient>,然后用Add()方法添加元素就行,不需要提前指定长度~

备注:内容来源于stack exchange,提问作者Avient_711

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.23 10:47:32