输入输出重定向(Financial Management)

Financial Management

Time Limit: 400/200 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 4954 Accepted Submission(s): 2330

Problem Description
Larry graduated this year and finally has a job. He’s making a lot of money, but somehow never seems to have enough. Larry has decided that he needs to grab hold of his financial portfolio and solve his financing problems. The first step is to figure out what’s been going on with his money. Larry has his bank account statements and wants to see how much money he has. Help Larry by writing a program to take his closing balance from each of the past twelve months and calculate his average account balance.
 

Input
The input will be twelve lines. Each line will contain the closing balance of his bank account for a particular month. Each number will be positive and displayed to the penny. No dollar sign will be included.
 

Output
The output will be a single number, the average (mean) of the closing balances for the twelve months. It will be rounded to the nearest penny, preceded immediately by a dollar sign, and followed by the end-of-line. There will be no other spaces or characters in the output.
 

Sample Input
100.00 
489.12 
12454.12 
1234.10 
823.05 
109.20 
5.27 
1542.25 
839.18 
83.99 
1295.01 
1.75
 

Sample Output
$1581.42
 


Source
Mid-Atlantic USA 2001
 

Recommend
PrincetonBoy


#include <stdio.h>

int main()
{
    //freopen("input.txt", "r", stdin);
    //freopen("output.txt", "w", stdout);

    int i;
    double a[12];
    double sum =0, ave;
    for(i=0;i<12;i++)
    {
        scanf("%lf", &a[i]);//之前用%d控制输入。
        sum+=a[i];
    }

    ave=sum/12;
    printf("$%.2f\n", ave);//第一次没有加\n  PE错误


    return 0;
}

//C语言自动四舍五入实验
/*#include <stdio.h>
int main()
{
    double a;
    scanf("%lf", &a);
    printf("%.2f", a);

    return 0;
}*/


这题的话主要问题是测试时数据过多,输入比较麻烦,题目很简单。我们可以使用文件保存输入数据,也就是使用输入输出重定向(《算法竞赛入门经典》第29页有详细介绍)。在main函数入口处加上

<span style="white-space:pre">	</span>freopen("input.txt", "r", stdin);
    <span style="white-space:pre">	</span>freopen("output.txt", "w", stdout);
不过首先要在你相关代码目录下新建两个文本文档,命名为input,output。编译运行前把样例数据复制粘贴到input文件中,运行后打开output文件即可看见结果。

还有这题第一次提交时没有加上\n,出现了PE。


你可能感兴趣的:(代码,C语言,ACM)