c# 为什么一个方法添加数组的所有元素失败时,类似的方法成功[关闭]

lawou6xi  于 2023-11-15  发布在  C#
关注(0)|答案(1)|浏览(237)

**已关闭。**此问题为not reproducible or was caused by typos。目前不接受回答。

这个问题是由错字或无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
5小时前关闭
Improve this question
我有一个double数组。为了简化这个例子,我使用了一个长度为3的数组。我想把数组的所有3个元素相加。我用3种方法来做。下面是演示的程序。

#include <stdio.h>

int main()
{
  double   a[3] =  {1.,3.,5.};

  double sum1 = a[0]+a[1]+a[2];

  int i=0;
  double sum2 = (double)a[i]+(double)a[i+1]+(double)a[i+2];

  double sum3 = a[i]+a[i+i]+a[i+2];

  printf("sum1=%f sum2=%f sum3=%f \n",sum1, sum2, sum3);
}

字符串
当你运行它时,
sum 1 =9.000000 sum 2 =9.000000 sum 3 =7.000000
为什么sum3失败了,尤其是当它应该等价于sum1的时候?当数组本身是一个double数组时,为什么我必须将数组的单个元素转换为double?

x6492ojm

x6492ojm1#

在线:

double sum3 = a[i]+a[i+i]+a[i+2];

字符串
a[i+i]应该是a[i+1]

相关问题