zoj 2001 Adding Reversed Numbers(大水水一个~)

给俩数,逆序数相加,相加后再逆序输出,不输出前导0;

 

很水吧。。。本来想用字符串相加来着,这么弄的话基本都大数了都,不干。。还是用笨方法吧~

 

简单学习了下C++中的 string类型的操作等。基本类似C中的字符串数组吧,多了几个调用。。。

 

那个memset在C++里好像就不用加string头文件了。。。估计在iostream里包含了吧。。

 

 

#include <iostream> #include <string> using namespace std; int main(void) { int ncases,len1,len2,num1,num2,num,y=0,temp,i; string str1,str2; cin>>ncases; while(ncases--) { getchar(); cin>>str1>>str2; y = 0; num1 = 0; num2 = 0; len1 = str1.size(); len2 = str2.size(); for(i=len1-1; i>=0; i--) { num1 *= 10; num1 += str1[i]-'0'; } for(i=len2-1; i>=0; i--) { num2 *= 10; num2 += str2[i]-'0'; } num = num1 + num2; while(num!=0) { temp = num%10; if(temp != 0) y = 1; if(y) cout<<temp; num /= 10; } cout<<endl; } system("pause"); return 0; }

 

 

你可能感兴趣的:(zoj 2001 Adding Reversed Numbers(大水水一个~))