1589 - 整型存储

写一个类,能接受int 型的变量,接收变量后能存储原变量(譬如12345)和其反向变量

(54321),最多处理数量为10 个,当输入达到10 个或者输入变量为的时候停止。并且在

类销毁前输出存储的所有变量。

题目输入

输入若干个整数。

题目输出

按类里存储的数个数m输出m行。每行两个数,表示原变量及其反向变量。

输入/输出样例

题目输入

12 3442 0

题目输出

12 21
3442 2443

提示

注意反向后可能会有前导0

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;
}

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;
}

提示

注意反向后可能会有前导0

时间限制 1 秒
内存限制 32 MB
讨论 统计
上一题 下一题