我正在尝试用c创建一个数组

时间:2017-12-18 22:18:16

标签: c arrays

#include <stdio.h>

int table [100];

int main (void)
{
    for (int i=0; i<100; i++)
    {
        i = table [i];
        printf("%i\n", table[i]);
    }
}

我正在尝试创建一个数组,将0存储到table [0],1存储到table [1]等等,然后打印它自己的值。

现在代码输出0。

2 个答案:

答案 0 :(得分:5)

您的作业是向后转移的 - 您需要将i分配给table[i],而不是像现在这样反过来:

table[i] = i;

答案 1 :(得分:1)

#include <stdio.h>

int table [100];

int main (void)
{
    for (int i=0; i<100; i++)
    {
        table [i] = i;
        printf("%i\n", i);
    }
}

你去了。由于数组中没有任何内容,并且迭代器在每次循环时都被重置,所以它甚至不会打印出全部一百个零,永远永远只打印0#0和0#1。现在。或者...

#include <stdio.h>

int table [] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,
    21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,
    41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,
    61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,
    81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99};

int main (void)
{
    for (int i=0; i<100; i++)
    {
        printf("%i\n", table[i]);
    }
}