什么是循环做C ++? tempList [J + 1]

时间:2018-03-12 00:27:35

标签: c++ arrays loops for-loop

我知道输出并且正确打印:49 49 46 40 31 19 4但是如何通过这个等式输入tempList [j + 1] + j * num?根据我的理解,如果我带走+ j * num,结果将是1010101。但是在括号中添加j+1会使其成为444444。那么j*num如何成为最终结果?

#include <iostream>

using namespace std;

int main()
{
    int *tempList;
    int num = 3; 

    tempList = new int[7];
    tempList[6] = 4;

    for (int j = 5; j >= 0; j--)
    {
        tempList[j] = tempList[j+1] + j * num; 
    }

    for (int j = 0; j < 7; j++)
    {
        cout << tempList [j] << " ";
    }

    cout << endl;
 } 

1 个答案:

答案 0 :(得分:0)

没有什么奇怪的。

num=3
tempList[6]=4

j=5, num=3
tempList[5] = tempList[6]+ j*num
tempList[5]=4 + (5*3) = 19

j=4, num=3
tempList[4] = tempList[5]+ j*num
tempList[4]=19 + (4*3) = 31

j=3, num=3
tempList[3] = tempList[4]+ j*num
tempList[3]=31 + (3*3) = 40

j=2, num=3
tempList[2] = tempList[3]+ j*num
tempList[2]=40 + (2*3) = 46 

j=1, num=3
tempList[1] = tempList[2]+ j*num
tempList[1]=46 + (1*3) = 49

j=0, num=3
tempList[0] = tempList[1]+ j*num
tempList[0]=49 + (0*3) = 49