如何从scanf中获取一行中的多个值

时间:2016-03-31 14:37:34

标签: c

我需要让多个值与它们一起工作然后将它们放在一个数组中(15值) 我想将所有值放在一行中,然后在for

中逐一取出它们
for(i=0;i< SIZEARRAY; i++)
{
        scanf("%d",&d);

    arr[i] = d;
    if(a < length(arr[i]))
    {
        a = length(arr[i]);
    }
}

这是一张应该如何看的图片

http://i.stack.imgur.com/Cecji.png

3 个答案:

答案 0 :(得分:3)

只需将scanf放入循环中并直接输入数组

即可
for (size_t index = 0; index < SIZEARRAY; index++) {
    if (scanf("%d", arr + index) != 1) /* error */;
    // arr + index is the same as &arr[index]
}

答案 1 :(得分:1)

你可以这样做:

for (i = 0; i < ARRSIZE; i++) {
    if (scanf("%d", &a[i]) != 1) { /*error */ }
    /* ok, now process me */ }
}

答案 2 :(得分:0)

根据您发布的图片,试试这个:

for(i=0;i< SIZEARRAY; i++)
{
    scanf("%d", &arr[i]);
    //do whatever you need
}