我得到了我想用 C 重写的代码。目的是矩阵 A 和 B 相乘。
for i := 1 to n do
    for j := 1 to n do
    begin
        C[i,j] := 0;
        for k := 1 to n do
            C[i,j] := C[i,j] + A[i,k]*B[k,j]
    end;
我的 C 翻译:
int main(int argc, const char * argv[])
{
    int n = 2; //for testing
    int i = n;
    int j = n;
    int k = n;
    int A[i][k];
    int B[k][j];
    int C[i][j];
    for (int i=0; i<n; i++)
    {
        for (int j=0; j<n; j++)
        {
            C[i][j]=0;
            for (int k=0; k<n; k++)
            {
                C[i][j] = C[i][j]+A[i][k]*B[k][j];
                printf("A[%d][%d]*B[%d][%d]\n", i, k, k, j);
            }
            printf("\n");
        }
    }
}
但是,当我测试它时,我得到 n^3 个输出。我在编写上述伪代码时是否出错?此外,什么是开始和结束;假设代表?