#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。
答案 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]);
}
}