阵列输出困难

时间:2018-12-04 17:06:17

标签: c arrays output

我一直在练习数组,但遇到了一个我似乎找不到答案的问题。我正在尝试显示用户输入的数字,但是这些数字并没有达到我的预期。它应该是列的形式。

#include <stdio.h>
int main (void)
{
   double A[5], B[5];
   int i;
   for (i=0; i<=4; i++)
   {
    printf("Enter 5 numbers for column A: ");
    scanf("%lf", &A[i]);
   }
   for (i=0; i<=4; i++)
   {
    printf("Enter 5 numbers for column B: ");
    scanf("%lf", &B[i]);
   }
   printf("A = (%f)  B = (%f) \n", A[i], B[i]);
   return 0;
}

printf语句似乎正确,但是输出中未显示数字。

2 个答案:

答案 0 :(得分:2)

在打印最终输出时,您应该问自己,i的值是多少。 您还应该问自己,A处的Bindex i数组中是什么。

鉴于了解了这些内容,我们可以以填充数组的方式显示数组的内容。

#include <stdio.h>
int main (void)
{
  double A[5], B[5];
  int i;
  for (i=0; i<=4; i++)
    {
      printf("Enter 5 numbers for column A: ");
      scanf("%lf", &A[i]);
    }
  for (i=0; i<=4; i++)
    {
      printf("Enter 5 numbers for column B: ");
      scanf("%lf", &B[i]);
    }
  for (i=0; i<=4; i++)
    {
      printf("A = (%f)  B = (%f) \n", A[i], B[i]);
    }
  return 0;
}

答案 1 :(得分:0)

正如@Tsakiroglou Fotis所说,您忘记在主要功能之后添加括号,而且您也没有循环最后的打印语句来打印所有元素。尝试使用确实会解决此类错误的编辑器。这是您的更正代码

#include <stdio.h>
int main (void){
double A[5], B[5];
int i;
for(i=0; i<=4; i++)
{
    printf("Enter 5 numbers for column A: ");
    scanf("%lf", &A[i]);
}
for(i=0; i<=4; i++)
{
    printf("Enter 5 numbers for column B: ");
    scanf("%lf", &B[i]);
}

for(i=0; i<5; i++){
  printf("A = (%f)  B = (%f) \n", A[i], B[i]);
}
return 0;
}