用while判断输入的数字是否回文数的简单实现

时间:2021-05-19

复制代码 代码如下:

# include <stdio.h>
int main(void)
{
int m,val,sum = 0;
printf("请输入一个回文数,如果是回文数返回YES,否则返回No:");
scanf("%d",&val);
m = val;
while(m)
{
sum = sum*10+m%10;
m/= 10;
}
if(sum == val)
printf("YES\n");
else
printf("NO\n");

}

//对while语句进行流程分析
//假设用户输入数字121,判断是否回文数,m非0是真,否则为假,为真输出YES,假输出No;

1--->sum = sum*10+m%10 (sum = 0*10+121%10)//sum=0+1,sum=1
m / = 10(m=m/10)//m=121/10,m=12
2--->sum = sum*10+m%10(sum=1*10+12%10)//sum=10+2,sum=12
m / 10 =10(m=m/10) //m=12/10,m=1
3--->sum = sum*10+m%10(sum=12*10+1%10)//sum=120+1,sum=121
m / 10 =10(m=m/10) //m=1/10,m=0

m = 0为假,则输出No

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章