【问题标题】:Issues printing matrix values打印矩阵值的问题
【发布时间】:2015-06-19 12:53:04
【问题描述】:

我对在 C 中使用矩阵相当陌生。我在使用它们的数学中遇到了一些问题。为了调试,我正在尝试检查我的矩阵是否存储正确,并已将以下代码放入调试中。

float regression_matrix[5][4] = {3.2, -2.8, -0.8, 2.2, -0.8, -3.0, 4.3, 0.9, -3.4, 1.3, 0.9,-1.6,-0.1,2.2,-0.8}; //input the cubic regression values
regression_matrix[1][2] = 12;
float k = regression_matrix[1][2];
pc.printf("Matrix 1,2 %d is %f\r\n", k);  // display the ADC Readings

输出是-19.200001,这是从哪里来的?我不确定我只是错过了使用 printf 命令还是在设置矩阵时遇到了一些问题?

任何想法将不胜感激。

【问题讨论】:

  • 您的printf 中不应该还有一个变量(除了k)吗?
  • 您声明了一个二维数组,但将其初始化为 1。这可能不是主要问题,但也无济于事。
  • 编译时你会收到警告。注意他们。

标签: c math matrix


【解决方案1】:

这里:

printf("Matrix 1,2 %d is %f\r\n", k);

您有两个格式说明符,但只有一个参数。这会导致未定义的行为。你可能想要

printf("Matrix 1,2 is %f\r\n", k);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多