Преобразование строки в числовой массив - C (СИ)

Формулировка задачи:

Привет всем. Кто-нибудь знает как строку заполненную числами преобразовать в числовой массив? Сама смогла найти только как с помощью функции atoi преобразовать строку в число. Если кто-нибудь знает киньте код или хотя бы алгоритм.


textual

Код к задаче: «Преобразование строки в числовой массив - C (СИ)»

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int Str2Arr(char *S, int *Arr)
{
     int c,i,j,l,k;
     char q;
       
     l=strlen(S);
     c=0;
     k=0;
     j=0;
     
     
     for (i=0; i<l; i++)
     {
         q=S[i];
         
         if (q==' ')
         {
          if (k>0) 
            {
               Arr[j++]=c; c=0; k=0;            
            }
         }   
         else
            {
                k=k+1;
                c=c*10+(q-'0');
            }
     }
     if (k>0) 
      {
        Arr[j++]=c; c=0; k=0;            
      };
     return j;
}                    
 
int main(int argc, char *argv[])
{
 
  int Z[100];
  int i,n;
  char *Str="56 0 0 12 9 7 3";
  
  for (i=0; i<100; i++) Z[i]=0;
  
  n=Str2Arr(Str,Z);
  
  for (i=0; i<n; i++) printf("%d\n",Z[i]);
    
  system("PAUSE");  
  return 0;
}
Эта работа вам не подошла?

Вы всегда можете заказать любую учебную работу у наших авторов от 20 руб.


СДЕЛАЙТЕ РЕПОСТ

15   голосов, оценка 4.400 из 5

Источник
Похожие ответы