C语言-回文数
程序员文章站
2022-06-26 14:37:26
...
回文数
回文数是一种正着读反着读都一样的数,比如12321,asdsa
基本程序思路:
建立两个指针指向字符串,使一个字符指向该字符串结束标记前一个字符,另一个指针指向开头,然后判断前后两个指针的值是否相等,相等就比第二个第三个等等,不相等就直接break,因为它不是回文数。
程序代码如下:
#include <stdio.h>
int main()
{
char* a = "11wgdg";
char* p, * t; //定义两个指针并都指向字符串
int n = 1; //默认字符串是回文数
p = t = a;
while (*p) //将指针p移到字符串最后一位
p++;
p--;
while (p >= t) //p<t时就比完了
{
if (*p == *t) //如果前面的字符与后面的字符相等就移动两个指针
{
p--;
t++;
}
else //否则就不是回文数,给n赋值0并退出循环
{
n = 0;
break;
}
}
if (n == 1) printf("是回文数"); //n为1就是回文数,0就不是
else printf("不是回文数");
return 0;
}
如有错误请指出,谢谢
上一篇: 戴在手臂的神奇装置:可让你感知虚拟现实
下一篇: 厂商热衷跨界?迪斯尼正在研发的智能手表