Maison >développement back-end >C++ >Comment convertir des nombres en formes ordinales (1er, 2e, 3e, etc.) en C# ?

Comment convertir des nombres en formes ordinales (1er, 2e, 3e, etc.) en C# ?

Linda Hamilton
Linda Hamiltonoriginal
2025-01-14 16:26:43368parcourir

How to Convert Numbers to Ordinal Forms (1st, 2nd, 3rd, etc.) in C#?

Conversion ordinale de nombres en C#

En C#, la fonction de formatage de chaîne ne prend pas directement en charge les nombres ordinaux. Pour convertir un nombre sous forme ordinale, vous devez utiliser une fonction personnalisée.

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

    string suffix = "th";
    int lastDigit = num % 10;
    int lastTwoDigits = num % 100;

    if (lastDigit == 1 && lastTwoDigits != 11) suffix = "st";
    else if (lastDigit == 2 && lastTwoDigits != 12) suffix = "nd";
    else if (lastDigit == 3 && lastTwoDigits != 13) suffix = "rd";

    return num + suffix;
}</code>

Cette fonction gère les nombres ordinaux de nombres inférieurs ou égaux à zéro et fournit différents suffixes pour différents cas (par exemple, 1er, 2e, 3e, etc.).

Utilisation :

<code class="language-csharp">int num = 5;
string ordinalForm = AddOrdinal(num);
Console.WriteLine(ordinalForm); // 输出:5th</code>

Remarque :

  • Les nombres inférieurs ou égaux à zéro n'ont pas de nombre ordinal, cette fonction gère donc de tels cas en conséquence.
  • Cette fonction n'est pas internationalisée, ce qui signifie qu'elle ne prend en charge que les formes ordinales anglaises.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn