Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Menjana Nombor Ordinal dengan Mudah (1, 2, 3, dll.) dalam C#?

Bagaimanakah Saya Boleh Menjana Nombor Ordinal dengan Mudah (1, 2, 3, dll.) dalam C#?

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-14 16:16:47781semak imbas

How Can I Easily Generate Ordinal Numbers (1st, 2nd, 3rd, etc.) in C#?

Buat nombor ordinal dengan mudah dalam C#

Mencipta nombor ordinal secara langsung dalam C# (cth., 1, 2, 3) mungkin tidak disokong secara langsung oleh String.Format() atau fungsi sedia ada. Walau bagaimanapun, terdapat beberapa cara mudah untuk mencapai ini.

Salah satu cara ialah menggunakan fungsi tersuai seperti ini:

<code class="language-csharp">public static string AddOrdinal(int num)
{
    if (num <= 0) return num.ToString(); // 处理0和负数

    string number = num.ToString();
    if (num % 100 == 11 || num % 100 == 12 || num % 100 == 13)
    {
        return number + "th";
    }
    else
    {
        switch (num % 10)
        {
            case 1:
                return number + "st";
            case 2:
                return number + "nd";
            case 3:
                return number + "rd";
            default:
                return number + "th";
        }
    }
}</code>

Fungsi ini menerima integer dan menyemak modulusnya untuk menentukan akhiran ordinal yang sesuai ("st", "nd", "rd", atau "th"). Contohnya:

<code class="language-csharp">Console.WriteLine(AddOrdinal(1));  // 输出:1st
Console.WriteLine(AddOrdinal(2));  // 输出:2nd
Console.WriteLine(AddOrdinal(3));  // 输出:3rd
Console.WriteLine(AddOrdinal(11)); // 输出:11th
Console.WriteLine(AddOrdinal(12)); // 输出:12th
Console.WriteLine(AddOrdinal(13)); // 输出:13th
Console.WriteLine(AddOrdinal(24)); // 输出:24th
Console.WriteLine(AddOrdinal(0));  // 输出:0
Console.WriteLine(AddOrdinal(-5)); // 输出:-5</code>

Perlu diambil perhatian bahawa kod ini belum diantarabangsakan dan mungkin perlu dilaraskan untuk bahasa lain yang format ordinalnya mungkin berbeza. Kod yang dipertingkatkan mengendalikan 0 dan nombor negatif, dan mengendalikan nombor yang berakhir dengan 11, 12, 13 dengan lebih tepat.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menjana Nombor Ordinal dengan Mudah (1, 2, 3, dll.) dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn