#include <stdio.h> #include <stdint.h> #include <string.h> void parse_csv_to_array(const char *str, uint8_t *arr, uint8_t *count) { // Your logic here int i,j,x,sum,k,y; sum=0;k=0,j=0;; x=strlen(str); for(i=0;i<x;i++){ if(str[i]>='0'&&str[i]<='9'){ sum=sum*10+(str[i]-48);} else{ arr[k++]=sum; sum=0;} } arr[k]=sum; *count=k+1; } int main() { char str[101]; fgets(str, sizeof(str), stdin); // Remove newline uint8_t i = 0; while (str[i]) { if (str[i] == '\n') { str[i] = '\0'; break; } i++; } uint8_t arr[20]; uint8_t count = 0; parse_csv_to_array(str, arr, &count); for (uint8_t i = 0; i < count; i++) { printf("%u", arr[i]); if(i < count - 1){ printf(" "); } } return 0; }
Test Cases
Test Results
Input
10,20,30
Expected Output
10 20 30