2012-03-26 70 views
-1

http://ideone.com/GKxcj 这是我的代码。我有一个关于输出问题,所以当我试图打印输出到文件拿给我这个输出中: http://codepad.org/LvaboydT 你可以从这个输出是重复的总列,每行这是为什么发生的calcdata功能看似乎不错对我来说。如果caldata函数中有什么错误,任何人都可以解释我的错误吗? 感谢每行重复输出

+0

这可能是有用的计算'total'值时加入一些'的printf()'语句来调试此 - 就像一个检查,看是否奇怪的是由于输出或计算。 – sarnold 2012-03-26 00:53:02

+0

我不能这样做,因为它似乎有一些未定义的行为,即使我使用printf也不会输出到屏幕,我也可以让输出文件在我的系统上运行>我从别人系统获得输出时在他们的系统上运行它。 – KhoaVo 2012-03-26 00:59:35

回答

0

我通过你的代码,并有一两件事似乎是不可思议。如果我理解得很清楚,每张桌子都对应一个溜冰者。

对于每一行你都有一个基数,一些分数和一个总分数。 在您的打印功能,我们可以清楚地看到:

滑冰[I] .baseval [J]打印基本VAL的滑冰i和j行

然后得分列表显示有溜冰者[1]。 score [j] [k]其中k是数组中的分数索引。

然而打印总得分当显示滑冰[I] .total_score这是一个唯一的值。所以对于一个给定的选手来说,表格的每一行都是相同的。

如果你想得到每一行的总分数,你只需要将skater [i] .total_score转换为一个数组,然后计算总分并将其添加到右行(与基准分数相同)

编辑:改变错误的变量名

问候

+0

以及我没有显示tech_score作为总分。我从总分中分别计算了科技分数。 – KhoaVo 2012-03-26 01:12:40

+0

对不起,我的意思是total_score:fprintf(fpOut,“%5.2f”,skater [i] .total_score);你看到你只有一个总得分,因此很自然,每一排都是一样的 – grifos 2012-03-26 01:23:30

+0

可能是total_score应该是一个数组,因为现在我只有1个total_score每个溜冰者 – KhoaVo 2012-03-26 01:26:33