急求用C语言编写的程序“查找最靠近m(如输入m=100)的一个回文数”,求C语言高手马上写出来,感激不尽!
答案:1 悬赏:60 手机版
解决时间 2021-02-06 04:29
- 提问者网友:趣果有间
- 2021-02-05 20:37
急求用C语言编写的程序“查找最靠近m(如输入m=100)的一个回文数”,求C语言高手马上写出来,感激不尽!
最佳答案
- 五星知识达人网友:过活
- 2021-02-05 22:13
#include
#include
bool IsStrReverse(int iData)
{
iData > 0 ? iData : - iData;
char buf[100];
sprintf(buf, "%d", iData);
int nCount = strlen(buf);
for (int i = 0; i < nCount/2; ++i)
if (buf[i] != buf[nCount-i-1])
return false;
return true;
}
int main(void)
{
// 读入数iData
int iData;
scanf("%d", &iData);
int iReverse = 0;
if (IsStrReverse(iData))
iReverse = iData;
else
{
for (int i = 1; ; ++i)
{
if(IsStrReverse(iData+i))
{
iReverse = iData + i;
break;
}
if (IsStrReverse(iData-i))
{
iReverse = iData - i;
break;
}
}
}
printf("%d 是最靠近 %d 的回文数", iReverse, iData);
return 0;
}
#include
bool IsStrReverse(int iData)
{
iData > 0 ? iData : - iData;
char buf[100];
sprintf(buf, "%d", iData);
int nCount = strlen(buf);
for (int i = 0; i < nCount/2; ++i)
if (buf[i] != buf[nCount-i-1])
return false;
return true;
}
int main(void)
{
// 读入数iData
int iData;
scanf("%d", &iData);
int iReverse = 0;
if (IsStrReverse(iData))
iReverse = iData;
else
{
for (int i = 1; ; ++i)
{
if(IsStrReverse(iData+i))
{
iReverse = iData + i;
break;
}
if (IsStrReverse(iData-i))
{
iReverse = iData - i;
break;
}
}
}
printf("%d 是最靠近 %d 的回文数", iReverse, iData);
return 0;
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯