这个题目主要是考输出格式,如果是用c的话,直接用%就比较简单,如果用C++的话,还得熟悉C++的输出格式控制函数,由于对C++格式输出不是太了解,一下子不知道double为什么在超出六位数的时候却只输出六位数。现在知道了,也把记下来。相关知识在C++模块,这个地方只有ACM的讲解。不过解决了两个问题,一个是double默认输出,一个是c++的格式输出。
这个题目的意思是:
就是已知12个月的钱的数目,求一年所得的money平均数。
C++代码:
View Code
1 #include <iostream>
2 #include <iomanip>
3 using namespace std;
4
5 int main ()
6 {
7 double m_sum=0;
8 double m;
9 int n=12;
10 while(n--&&cin>>m)//输入
11 {
12 m_sum=m_sum+m;//求和
13 }
14 cout<<"$"<<setiosflags(ios::fixed)<<setprecision(2)<<m_sum/12<<endl;//setiosflags(ios::fixed),setprecision(2)修改小数点后面的输出位数 ,两个函数一块用
15 return 0;
16 }
17 //这个题目主要是考C++格式的输出
java代码:(也是格式输出问题)
View Code
1 import java.io.*;
2 import java.util.*;
3 import java.text.*;
4
5 public class five
6 {
7 public static void main(String args[])throws Exception
8 {
9 Scanner in=new Scanner(System.in);
10 DecimalFormat df=new DecimalFormat("#0.00");
11 double m_sum=0;
12 int n=12;
13 while((n-->0) && in.hasNext())
14 {
15 double m_in=in.nextDouble();
16 m_sum=m_sum+m_in;
17 }
18 m_sum=m_sum/12;
19 System.out.print("$"+df.format(m_sum));
20
21 }
22 }