输出以逗号分隔的数字

本文关键字:数字 分隔 输出 | 更新日期: 2023-09-27 18:18:20

这是我在课堂上遇到的一个问题:

为循环写一个,输出1到n,用逗号分隔。示例:for n = 9打印1、2、3、4、5、6、7、8、9

我的代码是。

for (int number = 1; number <= 9; number++)
    Console.Write("{0},", number);
Console.ReadLine();

输出1,2,3,4,5,6,7,8,9,有没有一种方法可以打印出来,不需要在9后面加逗号?谢谢你的帮助。

输出以逗号分隔的数字

另一种方法是打印出第一个数字,然后在每次迭代中打印出一个逗号,后跟下一个数字。这样逗号就不会在结尾了。

Console.Write("1");
for (int number = 2; number <= 9; number++)
  Console.Write(", {0}", number);

扩展您的方法,您可以使用条件(三元)运算符并执行如下操作:

int maxNumber = 9;
for (int number = 1; number <= maxNumber; number++)
{
    Console.Write(number != maxNumber ? "{0}," : "{0}", number);
}
Console.ReadLine();

另一个使用String的更简洁的选项。连接和枚举。范围是:

int maxNumber = 9;
Console.Write(String.Join(",", Enumerable.Range(1, maxNumber)));
Console.ReadLine();

假设需要在练习中使用for循环,这里有一种可能性。

int count = 9; string result = "";
for (int i = 1; i <= count; i++) result += i.ToString(i < count ? @"#'," : "#");
Console.WriteLine(result);

有一种方法:

Console.WriteLine(string.Join(",", Enumerable.Range(1, 9)));

您需要首先确定n的值:

Console.Write("Please insert max value: ");
int n = int.Parse(Console.ReadLine());

现在可以使用for循环输出数字:

        for (int i = 1; i <= n; i++)
        {
            Console.Write(i + ", ");
        }

下面是不以逗号结尾的简单打印逻辑示例:2、4、6、8、10

namespace PurushLogics
{
    class Purush_EvenNoOddNo
    {
        //Print Even Number & Odd Numbers , seperated
        static void Main()
        {
            int start = 50;
            int end = 100;
            for (int j = start; j <= end; j++)
            {
                if (j % 2 == 0)
                {
                    Console.Write(j);
                    if (j < end) // To avoid print , at the end
                    {
                        Console.Write(",");
                    }
                }
            } Console.WriteLine();
            for (int j = start; j <= end; j++)
            {
                if (j % 2 != 0)
                {
                    Console.Write(j);
                    if (j < end-1)
                    {
                        Console.Write(",");// To avoid print , at the end
                    }
                }
            } Console.WriteLine();
            Console.ReadLine();
        }
    }
}

一个简单但可能不是最优化的方法是将您的out消息存储在字符串中,并剪掉末尾。

string output = ""; //empty string
for (int number = 1; number <= 9; number++)
    string += number.ToString() + ","; //you can add strings together with '+'. 
output = output.Substring(0, output.length - 1);
Console.WriteLine(output);
Console.ReadLine();

我的c#有点生疏

这里是Substring()的参考

你也可以用list代替Array。Console.Write (string.Join("、"数组),