早教吧作业答案频道 -->其他-->
、所谓回文数是从左至右与从右至左读起来都是一样的数字,如:121是一#include void main(){ int i,count= 0;1:for_______________________ /*需要完成的程序段从这一行开始*/ 2:if (________________)3:count=__________
题目详情
、所谓回文数是从左至右与从右至左读起来都是一样的数字,如:121是一
#include
void main()
{
int i,count= 0;
1:for_______________________ /*需要完成的程序段从这一行开始*/
2:if (________________)
3:count=_____________
printf("count=%d\n",count);
}
(分)
#include
void main()
{
int i,count= 0;
1:for_______________________ /*需要完成的程序段从这一行开始*/
2:if (________________)
3:count=_____________
printf("count=%d\n",count);
}
(分)
▼优质解答
答案和解析
回文数的形成规则不知道数学上有没有证明.如果有的话,朋友可以告诉我,这里通过编程验证.
规则:任意的一个的十进制的整数,将其转过来后和原来的整数相加,得到新的整数后重复以上步骤,最终可以得到一个回文数.
#include
#define MAX 2147483648 //限制M+N的范围
long re(long int a)//求输入整数的反序
{
long int t;
for(t=0;a>0;a/=10)//将整数反序
t=t*10+a%10;
return t;
}
int nonre(long int s)//判断给定的整数是否为回文数
{
if(re(s)==s)
return 1;//是返回1
else
return 0;//不是返回0
}
void main()
{
long int n,m;
int count=0;
printf("please input a number optionaly:");
scanf("%ld",&n);
printf("The genetation process of palindrome:\n");
while(!nonre((m=re(n))+n))//判断整数与其反序相加后是否为回文数
{
if((m+n)>=MAX)//超过界限输出提示信息
{
printf("input error,break.\n");
break;
}
else
{
printf("[%d]:%ld+%ld=%ld\n",++count,n,m,m+n);
n+=m;//累加
}
}
printf("[%d]:%d+%ld=%ld\n",++count,n,m+n);
printf("Here we reached the aim at last.\n");//输出最好得到的回文数
}
规则:任意的一个的十进制的整数,将其转过来后和原来的整数相加,得到新的整数后重复以上步骤,最终可以得到一个回文数.
#include
#define MAX 2147483648 //限制M+N的范围
long re(long int a)//求输入整数的反序
{
long int t;
for(t=0;a>0;a/=10)//将整数反序
t=t*10+a%10;
return t;
}
int nonre(long int s)//判断给定的整数是否为回文数
{
if(re(s)==s)
return 1;//是返回1
else
return 0;//不是返回0
}
void main()
{
long int n,m;
int count=0;
printf("please input a number optionaly:");
scanf("%ld",&n);
printf("The genetation process of palindrome:\n");
while(!nonre((m=re(n))+n))//判断整数与其反序相加后是否为回文数
{
if((m+n)>=MAX)//超过界限输出提示信息
{
printf("input error,break.\n");
break;
}
else
{
printf("[%d]:%ld+%ld=%ld\n",++count,n,m,m+n);
n+=m;//累加
}
}
printf("[%d]:%d+%ld=%ld\n",++count,n,m+n);
printf("Here we reached the aim at last.\n");//输出最好得到的回文数
}
看了 、所谓回文数是从左至右与从右...的网友还看了以下:
这句话是作者对居里夫人在科学研究中表现的的赞颂.“淡蓝色的荧光”是(填科学家名)用三年零九个月的时 2020-06-07 …
新高一预习的呐、有好多不清楚、1.若A={1,2,3,4,5,6},B={2,4,6,8},记M- 2020-06-28 …
0.1倍的说法正确吗那应该说扩大到原来的0.1倍,还是缩小到原来的0.1倍。 2020-07-13 …
甲与乙相差7.2如果甲缩小到原来的0.1,那么甲和已的比是1:1,求甲和乙� 2020-07-13 …
(x-5)(x+1)≤0解.怎么变号2楼第二句话好像不对吧,哪来的X+1大于等于0不好意思,我实在 2020-07-30 …
帮忙求个递推公式,从兔子繁殖问题衍生而来.m(0)=1,m(1)=1,m(2)=1,m(3)=2, 2020-08-01 …
(都是跟同学讨论然后自己被绕进去出不来的……)1.1/3=0.33……那么两边同时乘以3,得1=0. 2020-11-20 …
问题请看下:多出来的0.1元是哪里来的呢?有3个人出去游玩,每人出资2元,共6元,实际花费5元.剩下 2020-12-08 …
如果消费价格指数上涨了20%,则现在1元钱()A.只值原来的0.8元钱B.只值原来的0.83元钱C. 2020-12-31 …
(2013•张家界)以下是小兰对一些物理知识的想象,其中你认为合理的是()A.假如水的比热容变为原来 2021-01-20 …