我有两个类型为int的数组。每个元素的长度约为17901个元素。一个代表高度,另一个代表空速。我想划分两个数组(此划分将导致马赫数)。我该怎么做?

这是我目前正在使用的代码:

for (i = 0; i < ((size / 2) + 1); i++) {    // size/2 here is 17901
    machNumber[i] = (ASarray[i] / soundspeed[i]);
}

最佳答案

((size/2)+1替换为计算的大小sizeof(ASarray)/sizeof(*ASarray)

这样,毫无疑问的循环。当然,必须静态定义ASarray的大小(必须未使用malloc分配内存)。

for(i = 0; i < sizeof(ASarray) / sizeof(*ASarray); i++) {
  machNumber[i] = (ASarray[i] / soundspeed[i]);
}

07-25 21:37