Как читать числа, разделенные пробелом, используя scanf

Я хочу читать числа (целочисленный тип), разделенные пробелами, используя функцию scanf ().
Я прочитал следующее

C, чтение нескольких чисел из одной строки ввода (scanf?)
как читать сканф с пробелами
Это не очень мне помогает. Как я могу читать числа с пробелом в качестве разделителя. Например, У меня есть следующие цифры в качестве ввода2 5 7 4 3 8 18 теперь я хочу хранить их в разных переменных.
Пожалуйста помоги.

Ответы на вопрос(6)

Читать как%s[^\n]

а затем прочитать каждыйchar из строки, и сделатьatoi() если этоchar иначе проигнорируй это.

Это должно быть так же просто, как использование списка принимающих переменных:

scanf("%i %i %i", &var1, &var2, &var3);

scanf использует любой пробел в качестве разделителя, так что если вы просто скажетеscanf("%d", &var) он пропустит любой пробел, а затем прочитает целое число (цифры до следующего нецифрового числа) и ничего более.

Обратите внимание, что пробел - это любой пробел - пробел, табуляция, перевод строки или возврат каретки. Любой из них является пробелом, и любой один или несколько из них будут служить для разделения последовательных целых чисел.

int main()
{
char string[200];
int g,a,i,G[20],A[20],met;

gets(string);
g=convert_input(G,string);

for(i=0;i<=g;i++)
    printf("\n%d>>%d",i,G[i]);
return 0;
}

int convert_input(int K[],char string[200])
{
int j=0,i=0,temp=0;
while(string[i]!='\0')
{
    temp=0;
    while(string[i]!=' ' && string[i]!='\0')
        temp=temp*10 + (string[i++]-'0') ;
    if(string[i]==' ')
        i++;
    K[j++]=temp;
}
return j-1;
}
Решение Вопроса

Я думаю, что по умолчанию значения читаются scanf с пробелом / вводом. Ну, вы можете предоставить пространство между "% d". если вы печатаете целые числа. Также и для других случаев.

scanf("%d %d %d", &var1, &var2, &var3);

Аналогично, если вы хотите прочитать значения, разделенные запятыми, используйте:

scanf("%d,%d,%d", &var1, &var2, &var3);

Ваш ответ на вопрос