#include <stdio.h> #include <ctype.h> void parse_shell_input(char *line) { char token[10][20]; int pos = 0, field = 0; for(int i=0;*(line+i)!='\0';i++){ if(*(line+i)!=' '){ if(pos<19){ token[field][pos++] = *(line+i); } } else{ if(pos>0){ token[field][pos] = '\0'; field++; pos = 0; if(field>=10) break; } } } token[field][pos]='\0'; field++; for(int i=0;i<field;i++){ printf("%s\n",token[i]); } } int main() { char line[101]; fgets(line, sizeof(line), stdin); parse_shell_input(line); return 0; }
Test Cases
Test Results
Input
led set 3 on
Expected Output