<p>Is there an easy way in C# to create <a href="http://en.wikipedia.org/wiki/Ordinal_numbers_%28linguistics%29" rel="noreferrer">Ordinals</a> for a number? For example:</p>

<ul>
<li>1 returns 1st</li>
<li>2 returns 2nd</li>
<li>3 returns 3rd</li>
<li>...etc</li>
</ul>

<p>Can this be done through <code>String.Format()</code> or are there any functions available to do this?</p>

You'll have to roll your own. From the top of my head:
```
```
public static string Ordinal(this int number)
{
  var work = number.ToString();
  if ((number % 100) == 11 || (number % 100) == 12 || (number % 100) == 13)
    return work + "th";
  switch (number % 10)
  {
    case 1: work += "st"; break;
    case 2: work += "nd"; break;
    case 3: work += "rd"; break;
    default: work += "th"; break;
  }
  return work;
}
```
```
You can then do
```
```
Console.WriteLine(432.Ordinal());
```
```
Edited for 11/12/13 exceptions. I DID say from the top of my head  :-)
Edited for 1011 -- others have fixed this already, just want to make sure others don't grab this incorrect version.