65,208
社区成员
发帖
与我相关
我的任务
分享#include <iostream>
using namespace std;
int main()
{
int n,totalLeft,totalRight,dotLeft,dotRight;
char ch;
while(cin>>n&&n!=0)
{
totalLeft=0;
totalRight=0;
for(;n>0;n--)
{
cin>>ch;
int sum=0;
while(ch!='.')
{
cin>>dotLeft;
sum+=dotLeft;
cin>>ch;
if(ch==',')sum*=1000;
}
totalLeft+=sum;
cin>>dotRight;
totalRight+=dotRight;
}
totalLeft+=totalRight/100;
cout<<"$";
int baseNum=10000000,numOfZero=7,flag=0;
while(numOfZero)
{
if(flag==0&&totalLeft/baseNum)
{
cout<<totalLeft/baseNum;
flag=1;
}
else if(flag){
if((numOfZero+1)%3==0)cout<<',';
cout<<totalLeft/baseNum;
}
totalLeft%=baseNum;
baseNum/=10;
numOfZero--;
}
cout<<totalLeft<<'.';
totalRight%=100;
if(totalRight==0)cout<<"00"<<endl;
else cout<<totalRight<<endl;
}
//int sum=0;
return 0;
}
char * comma(__int64 num) {
static char commades[80];
static char commasrc[80];
sprintf(commasrc,"%I64d",num);
int L=strlen(commasrc);
register int j=0;
register int k=0;
for (int i=L-1;i>=0;i--) {
commades[j]=commasrc[i];
k++;
j++;
if ((k%3)==0 && i>0) {
commades[j]=',';
j++;
}
}
commades[j]=0;
strcpy(commades,strrev(commades));
return commades;
}