Spreker 1: Gestel ek wil skryf 'n program wat druk uit 'n float, spesifiek die gevolg verdeel 1 10. Wel, sou my eerste instink om te skryf hierdie program is soos volg. Float f gelyk aan 1 gedeel deur 10, en dan druk f persent 0,1 f, en daardeur wat beteken dat ek wil uit te druk 'n float tot een desimale plek, backslash n komma f. Kom ons nou hierdie program saam te stel. Maak float 0 dot streep float 0. Wel, dit is nie heeltemal reg nie. Ek is redelik seker dat 1 gedeel deur 10, of 1/10 is nie 0,0 nie, maar 0,1, en nog hier Ek sien op die skerm 0.0. Wat gaan aan? Wel, dit blyk dat in c, indien jy deel 'n int deur 'n int, jy terug 'n int. En so selfs al 1 gedeel deur 10 is inderdaad 0.10, kan 0,1 nie pas in 'n int, En ja, wat c is dit kapt, of gooi alles weg na die desimale plek, en daardeur te verlaat ons met net 0. Maar dan, natuurlik, met die druk f ons spesifiseer dat ons wil graag om te druk f te een desimale plek, en sodat 0 vertoon word as 0,0. Wel, duidelik is dit 'n probleem wat moet 'n oplossing.