1589 - 整型存储
写一个类,能接受int 型的变量,接收变量后能存储原变量(譬如12345)和其反向变量
(54321),最多处理数量为10 个,当输入达到10 个或者输入变量为0 的时候停止。并且在
类销毁前输出存储的所有变量。
Input
输入若干个整数。
Output
按类里存储的数个数m输出m行。每行两个数,表示原变量及其反向变量。
Examples
Input
12 3442 0
Output
12 21 3442 2443
Hint
注意反向后可能会有前导0
Solution C
int main(int argc, char* argv[]) {char str[100]; int i,len,x,cnt=0; while(~scanf("%s",str)) { x=0; if(str[0]=='0')break; ++cnt; if (cnt > 10) break; printf("%s ",str); len=strlen(str); for (i =len - 1; i >= 0;i--) x = x * 10 + (str[i] - '0'); printf("%d\n",x); } return 0; }
Solution C++
#include <cstdio> #include <cstring> int main() { //freopen("test.in", "r", stdin); //freopen("test.out", "w", stdout); int cnt = 0; char s[100]; while (scanf("%s", s)) { if ('0' == s[0]) break; ++cnt; if (cnt > 10) break; printf("%s ", s); int n = strlen(s), x = 0; for (int i = n - 1; i >= 0; --i) x = x * 10 + (s[i] - '0'); printf("%d\n", x); } return 0; }
Hint
注意反向后可能会有前导0