/*C++任意输入一个整数,再把它的各位数字重新组合一个新的整数,使其值最大*/
整数反向输出
// C++控制台.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <iostream>
#include <string>
#include <windows.h>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
起始:
/*C++任意输入一个整数,再把它的各位数字重新组合一个新的整数,使其值最大*/
int 输入整数(0), 数(0), 输出(0), 取值(0), 比较(0), 暂存(0), 位(0), 序(0), 反向(0);
bool 控制(true);
scanf_s("%d", &输入整数);
do
{
比较 = 序 = 0;
暂存 = 输入整数;
do
{
取值 = 暂存 % 10;
if (取值 > 比较)/*每次取最大值*/
{
比较 = 取值;
数 = 序;
}
++序;
} while (暂存 /= 10);
if (控制) 位 = 反向 = 序;
输出 += 比较 * pow(10, --位);
控制 = false;
} while (输入整数 -= 比较 * pow(10, 数));/*每次减去最大值*/
printf_s("%d ", 输出);
数 = 0;
do
{
数 += (输出 % 10) * pow(10, --反向);
} while (输出 /= 10);/*反向输出各位数*/
printf_s("%d ", 数);
system("pause");
//system("cls");
goto 起始;
//return 0;
}