您的位置:首页 > 其它

将整数倒序输出,剔除重复数据

2016-03-03 10:58 302 查看
题目描述:

输入一个整数,如12336544,或1750,然后从最后一位开始倒过来输出,最后如果是0,则不输出,输出的数字是不带重复数字的。

示例:

输入:12336544

输出:456321

输入:1750

输出:571

输入:-175

输出:-571

代码:

#include <iostream>
using namespace std;
int main()
{
int num;
cin >> num;
int signal;
if (num<0)
{
num = -num;
signal = 1;
}
else
{
signal = 0;
}
int temp = num;
int len = 0;
while (temp>0)
{
len++;
temp /= 10;
}
char* n = (char*)malloc(len*sizeof(char));
int i;
temp = num;
for (i = 0; i<len; i++)
{
n[i] = temp % 10 + '0';
temp /= 10;
}
if (signal)
cout << '-';
int flag[10] = { 0 };
int sig = 0;
for (i = 0; i<len; i++)
{
while (n[i] == '0'&&sig==0)
i++;
sig = 1;
if (flag[n[i] - '0'] == 0)
{
flag[n[i] - '0'] = 1;
cout << n[i];
}
}
cout << endl;

cin.get();
cin.get();
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: