我正在尝试使用基本的C编程创建代码,这些代码将从开始的平衡中产生一个正在运行的“ net”。到目前为止,我已经使用了“ while”循环,该循环运行并计算循环,但计算不正确。

起始余额为1000.00,应将其输入到产生净额的此信息中。

那么,如何以某种方式循环以保持运行总计?我还需要确保输出产生在“金额”下列出的正浮点数。

最佳答案

您在错误的位置计算了EndBal,将其移到fscanf下面。
EndBal总是会计算错误,因为您将其更新为错误。在进入循环之前使用EndBal=balance并在其中使用EndBal += amount
netEndBal相同,选择其中之一或在打印前添加net=EndBal
万一您将在其他地方使用最终余额值,请不要将balance声明为const


编辑:如果您需要,请不要忘记选择此答案。

编辑:下面是应用上述步骤的代码

void process (void) {
  EndBal = balance;
  while(!feof(datafile)){
    count++;
    fgets(transcation, 11, datafile);
    fscanf(datafile,"%f\n", &amount);
    EndBal += amount;
    printf("%-14s%11.2f%20.2f%\n",transcation,amount,EndBal);
  }
}

10-04 17:49