Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- int wordsNum(char* str)
- {
- int num = 0;
- while(*str)
- {
- while(*str == ' ' && *str)str++;
- if(*str)num++;
- while(*str != ' ' && *str)str++;
- }
- return num;
- }
- int pow(int numb,int n)
- {
- int res = 1;
- while(n--)
- res *= numb;
- return res;
- }
- void siTOc(const char* str,short int* ms)
- {
- int i = 0,tmp = 0;
- while(*str)
- {
- while(*str == ' ' && *str)str++;
- while(*(str + tmp) != ' ' && *(str + tmp) )tmp++;
- for(int k = 0; k < tmp; k++ )
- {
- ms[i] += pow(10,tmp - k - 1) * (short int)(*str - '0');
- str++;
- }
- i++;
- tmp = 0;
- }
- }
- int main()
- {
- char *str;
- short int *ms;
- int size;
- str = (char*)malloc(100 * sizeof(char));
- if(!str)return 0;
- gets(str);
- size = wordsNum(str);
- ms = (short int*)malloc(size * sizeof(short int));
- if(!ms)
- {
- free(str);
- return 0;
- }
- for(int i = 0 ; i < size; i++)
- {
- ms[i] = 0;
- }
- siTOc(str,ms);
- printf("\n");
- for(int i = 0 ; i < size; i++)
- printf("%d ",ms[i]);
- free(str);
- system("pause");
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement