Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 3955538
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 20, 20262026-05-20T02:14:45+00:00 2026-05-20T02:14:45+00:00

I have a floating point number such as 4917.24 . I’d like to print

  • 0

I have a floating point number such as 4917.24. I’d like to print it to always have five characters before the decimal point, with leading zeros, and then three digits after the decimal place.

I tried printf("%05.3f", n) on the embedded system I’m using, but it prints *****. Do I have the format specifier correct?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-20T02:14:45+00:00Added an answer on May 20, 2026 at 2:14 am

    Your format specifier is incorrect. From the printf() man page on my machine:

    0 A zero ‘0‘ character indicating that zero-padding should be used rather than blank-padding. A ‘-‘ overrides a ‘0‘ if both are used;

    Field Width:
    An optional digit string specifying a field width; if the output string has fewer characters than the field width it will be blank-padded on the left (or right, if the left-adjustment indicator has been given) to make up the field width (note that a leading zero is a flag, but an embedded zero is part of a field width);

    Precision: An optional period, ‘.‘, followed by an optional digit string giving a precision which specifies the number of digits to appear after the decimal point, for e and f formats, or the maximum number of characters to be printed from a string; if the digit string is missing, the precision is treated as zero;

    For your case, your format would be %09.3f:

    #include <stdio.h>
    
    int main(int argc, char **argv)
    {
      printf("%09.3f\n", 4917.24);
      return 0;
    }
    

    Output:

    $ make testapp
    cc     testapp.c   -o testapp
    $ ./testapp 
    04917.240
    

    Note that this answer is conditional on your embedded system having a printf() implementation that is standard-compliant for these details – many embedded environments do not have such an implementation.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

If I have an extremely long floating point number in Ruby such as: x
I have a floating point number that have more decimal digits, for example: float
I have a floating point number in JavaScript, like 42.563134634634. I want to display
Say I have a floating point number. I would like to extract the positions
I have a list with floating point number named a . When I print
I have periodic data with the index being a floating point number like so:
I have implemented an algorithm for floating point decimal to rational fraction approximation (example:
Suppose you have a random number generator that generates a random floating point number
Suppose I have a hex number 4072508200000000 and I want the floating point number
I have a floating point number in exponential format i.e. 4.1595246940817E-17 and I want

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.