Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
#include<stdio.h>
#include<math.h> //linkkaukseen -lm , jotta tarvittavat kirjastot mukana, log10() tarvitsee

char* itoa(int luku, char*jono);

//esimerkki main funktiosta
int main()
{
 int luku=123;
 char Jono[10];
 itoa(luku,Jono);
 printf("%d %s\n", luku,Jono);
 return 1;
}

char* itoa(int luku, char*jono)
{
 int i=0;
 int apu,numero,alkupluku;
 alkupluku=luku;
 i=log10((double)abs(luku));//luvussa on i+1; numeroa
 if(luku<0)i++;
 jono[i+1]=0;//päätetään merkkijono eli 0 loppuun
 luku=abs(luku);
 while((i>-1 && alkupluku > 0) || (i>0 && alkupluku < 0 ))
 {
   apu=luku/10;
   apu=apu*10;
   numero=luku-apu; //luvun vähiten merkitsevä numero
   jono[i]=48+numero; //muutetaan numero ASCII-arvoksi
   i--;
   luku=luku/10;
 }
 if(alkupluku<0) jono[0]='-';
 return jono;
}