剛剛開始刷九度online judge的題目:不會了,上網跟别人學的
- 題目描述:
-
給定兩個整數A和B,其表示形式是:從個位開始,每三位數用逗号","隔開。
現在請計算A+B的結果,并以正常形式輸出。
- 輸入:
- 輸入包含多組資料資料,每組資料占一行,由兩個整數A和B組成(-10^9 < A,B < 10^9)。
- 輸出:
- 請計算A+B的結果,并以正常形式輸出,每組資料占一行。
- 樣例輸入:
-
-234,567,890 123,456,789 1,234 2,345,678
- 樣例輸出:
-
-111111101 2346912
我用c++ vc6.0 做的, atoi 應該是ascii to int 吧
#include<iostream.h> #include<string> using namespace std; int main() { char s1[14];//有取值範圍,是以設定這麼大 char s2[14]; char s3[14]; char s4[14]; while(1) { cin>>s1>>s2; int k1=0,k2=0; int l1,l2; l1=strlen(s1); l2=strlen(s2); for (int i=0;i<l1;i++) { if (s1[i]!=',') s3[k1++]=s1[i]; s3[k1]='\0'; } //printf("%d\n",atoi(s3)); //做了一些測試,atoi 必須對應一串連續的數,如果數字之間有\0,轉換之後傳回0,是以設定了一個k1 k2 for (int j=0;j<l2;j++) { if (s2[j]!=',') s4[k2++]=s2[j]; s4[k2]='\0'; } int add=atoi(s3)+atoi(s4); cout<<add<<endl; // break; } return 0; }