# Extremely simple printf question

**URL:** <https://www.ruby-forum.com/t/extremely-simple-printf-question/70531>\
**Category:** Ruby\
**Created:** [September 29, 2006, 9:21pm UTC](https://www.ruby-forum.com/t/extremely-simple-printf-question/70531 "2006-09-29T21:21:57Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![weyus](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/7ab992/32.png) [@weyus](https://www.ruby-forum.com/u/weyus)\
**Post date:** [September 29, 2006, 9:21pm UTC](https://www.ruby-forum.com/t/extremely-simple-printf-question/70531/1 "2006-09-29T21:21:57Z")

</div>

How embarrassing - how long have I been away from C to have to ask this?

I want to display a float with only two digits of precision.

I’m trying this:

irb(main):011:0\> printf("%2f", 5.3456)  
5.345600=\> nil

What am I doing wrong?

Wes

---

<div class="post-metadata">

**Author:** ![weyus](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/7ab992/32.png) [@weyus](https://www.ruby-forum.com/u/weyus)\
**Post date:** [September 29, 2006, 9:23pm UTC](https://www.ruby-forum.com/t/extremely-simple-printf-question/70531/2 "2006-09-29T21:23:51Z")

</div>

Got it - sorry.

irb(main):014:0\> printf("%-10.2f", 5.3456)  
5.35 =\> nil

---

<div class="post-metadata">

**Author:** ![weyus](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/w/7ab992/32.png) [@weyus](https://www.ruby-forum.com/u/weyus)\
**Post date:** [September 29, 2006, 10:41pm UTC](https://www.ruby-forum.com/t/extremely-simple-printf-question/70531/3 "2006-09-29T22:41:42Z")

</div>

Wes G. wrote:

> Got it - sorry.

Actually, you didn’t, quite.

> irb(main):014:0\> printf("%-10.2f", 5.3456)  
> 5.35 =\> nil

You almost always want to right-justify a column of such numbers:

irb(main):014:0\> printf("%10.2f", 5.3456)

Use the default form without the “-”, add a field width larger than the  
largest number, and you will get a nice right-justified column.
