如何扫描和打印最多20个变量的数组?

问题描述 投票:-1回答:2

在C中,如何扫描打印由用户给出的20个数字的数组。

示例所需输出:输入数据:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20输入的数据为:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

这是我到目前为止我的循环:

for (i = 0; i <= 20; i++){
  scanf("%d", &arry[i]);
}

然而,这在循环终止之前一直要求21个输入。

c
2个回答
0
投票
for (i = 0; i < 20; i++){
  scanf("%d", &arry[i]);
}

我们应该永远记住,当我们声明一个大小为n的数组时,会分配一个索引为0到n-1的n个元素的数组。我们不应该访问那些未分配给我们的内存位置,C不允许你这样做,你的程序可能会崩溃。尽管你的编译器可能没有给出任何错误信息。

这样做是一种很好的做法。


1
投票

一切都很好,除了=。它的意思是:

FOR-LOOP运行020

这意味着共有21值。只需删除那个=就可以了:

for (i = 0; i < 20; i++)
{
  scanf("%d", &arry[i]);
}
© www.soinside.com 2019 - 2024. All rights reserved.