程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> ZOJ 2476 Total Amount

ZOJ 2476 Total Amount

編輯:C++入門知識

ZOJ 2476 Total Amount


題意:

比較簡單的題目,就是把給定格式的數字加起來,再按規定格式輸出,想想感覺很簡單,寫起來還是不是很順,wa了5次,能注意的點都注意了,重新寫了一遍才過的。現在總結以下幾點易錯點:

1.像小於10和小於100的需要特判。

2.不要用double解,精度不能保證,最後處理也煩,建議直接把數字讀出來,雖說范圍是int內,但不知道數據會不會坑,最好用long long。

3.處理','的時候,要注意總長度減去小數點後兩位後剛好能整除3的情況,要注意這種情況下最前面不能帶有','。


總結:雖說是簡單題,但是wa了這麼多次實在是太不應該了,比賽的時候,就跪了,還是要加強手感呀奮斗,調試的時候可以把一些中間量輸出,調試會更快。



下面貼下代碼:

#include 
#include 
#include 
using namespace std;
long long int StringToInt(string s)
{
	long long int res=0,flag=1;
	for(int i=s.length()-1;i>=0;i--)
	{
		res+=flag*(s[i]-'0');
		flag*=10;
	}
	return res;
}
string IntToString (long long int x)
{
	string res="";
	if(x==0)
	{
	  res+='0';
	  return res;	
	}
	while(x)
	{
		res+=(x%10+'0');
		x/=10;
	}
	reverse(res.begin(),res.end());
	return res;
}
int main()
{
	int n;
	long long int ans=0;
	string s,ss,sss;
	while(cin>>n&&n)
	{
		ans=0;
		for(int i=0;i>s;
		  ss="";
		  for(int j=1;j

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved