Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Mencipta Nombor Ordinal dengan Cekap (1, 2, 3, dll.) dalam C#?
C# tidak menawarkan fungsi terbina dalam (seperti String.Format()
) untuk terus mencipta nombor ordinal (1, 2, 3, dsb.). Walau bagaimanapun, fungsi tersuai yang mudah memberikan penyelesaian yang bersih.
Berikut ialah contoh ringkas:
<code class="language-csharp">public static string ToOrdinal(int num) { if (num <= 0) return num.ToString(); string suffix = ""; int lastDigit = num % 10; int lastTwoDigits = num % 100; if (lastTwoDigits >= 11 && lastTwoDigits <= 13) suffix = "th"; else if (lastDigit == 1) suffix = "st"; else if (lastDigit == 2) suffix = "nd"; else if (lastDigit == 3) suffix = "rd"; else suffix = "th"; return num + suffix; }</code>
Fungsi ini mengendalikan kedua-dua nombor positif dan negatif dengan cekap. Untuk nombor positif, ia menentukan akhiran ordinal yang betul ("st", "nd", "rd", atau "th") berdasarkan digit terakhir dan dua digit terakhir. Nombor negatif dikembalikan tidak berubah kerana ia tidak mempunyai bentuk ordinal standard. Ingat fungsi ini khusus untuk ordinal bahasa Inggeris; pengantarabangsaan memerlukan penyelesaian yang lebih kompleks.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencipta Nombor Ordinal dengan Cekap (1, 2, 3, dll.) dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!