C程序,从循环文件输出到txt

时间:2015-09-18 15:59:34

标签: c loops cmd io

我现在正在参加C编程的入门课程,我们被分配制作某种项目的收银机计划,计算税收并将其四舍五入(因为这里的魁北克省1美分不再存在)和我使用了一种与老师不同的方法将我的数字四舍五入到5美分。

他让我证明这种方法。所以我决定写一个小程序,为什么不呢?!编写代码,程序运行完美,但这里是捕获,输出的数量太大,无法在cmd窗口中显示它们。所以我需要增加cmd窗口可以显示的数据量(我需要它大约10 000)或者输出并将数据附加到txt文件。在Python中没问题....在C中没那么多。你能帮助我吗?

这是代码:

 int main()
  {
      float prixitem = 0.00;
      float arrondis;
      int count = 0;

       do{

       prixitem = (prixitem + 0.01);
       arrondis = (round(prixitem * 20.0)/20.0); // Round up happens here
       printf("prix : %.2f ---> %.2f\n", prixitem, arrondis );
       count = count + 1;
           } while (prixitem < 100.00);

   printf("Nombre de possibilites arrondis a 5 : %d\n", count);
   system("pause");
   return 0;
  }

2 个答案:

答案 0 :(得分:0)

这是从命令提示符最容易完成的事情:

c:\> myprogram > output.txt

编辑:

如果你想从C程序中写入文件,你可以这样做:

FILE *f = fopen("output.txt","w");
if (f == NULL) {
    perror("fopen failed");
    exit(1);
}
....
fprintf(f,"prix : %.2f ---> %.2f\n", prixitem, arrondis );
...
fclose(f);

答案 1 :(得分:0)

您可以使用文件指针和fprintf将命令行的输出定向到该文件。例如:

#include <stdio.h> 

int main() { 
    FILE *fp; 

    fp = fopen("/tmp/test.txt", "w+");
    fprintf(fp, "Your number = %d\n", count);

    fclose(fp);
    }

您可以在此处详细了解:http://www.tutorialspoint.com/cprogramming/c_file_io.htm