#include
#include
#include
#define SIZE 10
void main()
{
int num, i, res = 0;
scanf_s("%d", &num);
printf("%d有", num);
for (i = 0; i < SIZE; i++)
{
if (num / pow(10, i) >= 1 && num / pow(10, i + 1) < 1)
{
printf("%d位\n", i + 1);
break;
}
}
for (int j = i; i >= 0; i--)
{
res = res + pow(10, j - i)*((int)(num / pow(10, i)) % 10);
}
printf("%d-->%d\n", num, res);
system("pause");
}
/************************************************************************/
/* 分块方法
/************************************************************************/
int wei5(int num)//do while实现
{
int wei = 0;
do
{
num /= 10;
wei++;
} while (num);
return wei;
}
int wei4(int num)//while实现
{
int wei = 0;
while (num)
{
num /= 10;
wei++;
}
return wei;
}
int wei3(int num)//for循环实现
{
int wei = 0;
for (; num > 0;)
{
num /= 10;
wei++;
}
return wei;
}
int wei2(int num) //goto实现
{
int wei=0;
AAA: if (num)
{
num /= 10;
wei++;
goto AAA;
}
return wei;
}
int wei1(int num)//递归实现
{
if (num < 10)
{
return 1;
}
else
{
return 1 + wei1(num / 10);
}
}
int rock(int num)
{
int wei = wei5(num);
int res = 0;
for (int j = wei-1; wei >= 0;wei--)
{
res = res + pow(10, j - wei)*((int)(num / pow(10, wei)) % 10);
}
return res;
}
void main()
{
int num, i, res = 0;
scanf_s("%d", &num);
printf("%d\n",rock(num));
system("pause");
}
阅读(261) | 评论(0) | 转发(0) |