在 C 中用 100 个整数填充数组
Populating an array with 100 integers in C
我正在在线获取免费的 CS50 class。在其中一个视频教程中,老师提到了用 100 个整数填充数组的能力,这是一个很好的练习。我现在正在尝试做那件事,但我很难弄明白。
注意:我只看到了包括scanf函数和指针在内的答案。是只能这样解决,还是不用scanf和pointer也能解决?
这几乎是我能得到的最接近的...
#include <stdio.h>
#include <cs50.h>
#include <ctype.h>
#include <stdlib.h>
int main(void)
{
int fill_array[100];
for(int i = 0; i <= 100; i++)
{
fill_array[99] = i;
printf("%i", fill_array[i]);
}
}
打印出大量随机数和这个错误:
fillingarray.c:14:18: runtime error: index 100 out of bounds for type 'int [100]'
665999424
应该是:
for(int i = 0; i < 100; i++)
您的 for 循环中还有一个错误,要填充数组,您应该:
fill_array[i] = i;
代码应该类似于
int fill_array[100];
for(int i = 0; i < 100; i++)
{
fill_array[i] = i;
printf("%i", fill_array[i]);
}
一个
int fill_array[100];
索引为 0-99。
及时停止for循环。
for(int i = 0; i < 100; i++)
此外,您可能希望填充与总是 99 不同的索引。
我正在在线获取免费的 CS50 class。在其中一个视频教程中,老师提到了用 100 个整数填充数组的能力,这是一个很好的练习。我现在正在尝试做那件事,但我很难弄明白。
注意:我只看到了包括scanf函数和指针在内的答案。是只能这样解决,还是不用scanf和pointer也能解决?
这几乎是我能得到的最接近的...
#include <stdio.h>
#include <cs50.h>
#include <ctype.h>
#include <stdlib.h>
int main(void)
{
int fill_array[100];
for(int i = 0; i <= 100; i++)
{
fill_array[99] = i;
printf("%i", fill_array[i]);
}
}
打印出大量随机数和这个错误:
fillingarray.c:14:18: runtime error: index 100 out of bounds for type 'int [100]'
665999424
应该是:
for(int i = 0; i < 100; i++)
您的 for 循环中还有一个错误,要填充数组,您应该:
fill_array[i] = i;
代码应该类似于
int fill_array[100];
for(int i = 0; i < 100; i++)
{
fill_array[i] = i;
printf("%i", fill_array[i]);
}
一个
int fill_array[100];
索引为 0-99。 及时停止for循环。
for(int i = 0; i < 100; i++)
此外,您可能希望填充与总是 99 不同的索引。