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

时间:2019-04-13 17:29:38

标签: c

在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个输入。

2 个答案:

答案 0 :(得分:1)

一切正常,除了=。这意味着:

  

FOR-LOOP0运行20

这意味着总共21个值。只需删除=,您就可以开始了:

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

答案 1 :(得分:0)

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

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

这是一个好习惯。