C Programma per convertire la stringa in un intero

Come scrivere un programma C per convertire la stringa in un intero linguaggio di programmazione C ?


Solution:
  1. #include <stdio.h>
  2.  
  3. //*prototipi*//
  4. int StrLen(char s[]);
  5. int StrToInt(char s[]);
  6. int DieciAlla(int);
  7.  
  8. int StrLen(char s[]){                     // funzione ausiliaria che calcola lunghezza di una stringa (testata,funziona)
  9.  int l = 0;
  10.  while (s[l] != '\0'){
  11.     l = l+1;}
  12.  return l;
  13. }
  14.  
  15. int DieciAlla(int l){                     // funzione ausiliaria che calcola una potenza di 10 (testata,funziona)
  16.   int i = 1;                      
  17.   int risultato = 1;
  18.   while(i<=l){
  19.     risultato = risultato*10;
  20.     i = i +1;}
  21.   return risultato;
  22. }
  23.  
  24. int StrToInt(char s[]){                   // funzione che converte una stringa nel corrisponente intero(testata, funziona male)
  25.  int l = StrLen(s);
  26.  int i = 0;
  27.  int sum = 0;
  28.  while(s[i]!= '\0' && i<l){
  29.     sum = sum + s[i]*DieciAlla(l-(i+1));
  30.     i = i+1;}
  31.  return sum;
  32. }
  33.  
  34. main(){
  35.  char s[] = "145";
  36.  printf("%d\n",StrLen(s));
  37.  printf("%d\n",DieciAlla(StrLen(s)));
  38.  printf("%d\n",StrToInt(s));
  39. }


Learn More :