C语言判断回文数小程序

# include <stdio.h>

int main(void)
{
int val;
int m;
int sum = 0;
printf("请输入您需要判断的数字:");
scanf("%d",&val);
m = val;
while (m)
{
sum = sum * 10 + m%10;
m /=10;
}
if(sum == val)
printf("Yes!\n");
else
printf("No!\n");
return 0;

}
请大家帮我把每个语句解释下

# include <stdio.h> //添加头文件

int main(void)//主函数
{
int val;
int m;
int sum = 0;//定义三个整型变量,分别是val m sum,其中sum赋初值位0
printf("请输入您需要判断的数字:");
scanf("%d",&val);//接受用户输入的数据,并存入变量val中
m = val;//将m赋值为val
while (m)//通过循环将m分解,将每位的数字乘以位数
{
sum = sum * 10 + m%10;
m /=10;
}
//比如是123,那么整个循环过程是
//sum=3
//sum=3*10+2
//sum=32*10+1
//sum=321
//此时sum于val相等

if(sum == val)//若sum与val相等,则输出yes,否则输出no
printf("Yes!\n");
else
printf("No!\n");
return 0;//主函数函数返回值
}

希望能帮助你!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-09-23
# include <stdio.h>

int main(void)
{
int val;
int m;
int sum = 0;
printf("请输入您需要判断的数字:"); //输入要判断的数字;
scanf("%d",&val); //将输入的数字赋给val;
m = val; //将val的值赋给m;
while (m) //当m为非零值时,执行循环操作;
{
sum = sum * 10 + m%10; //将sum值的十倍加上m值对10取余所得的数字加起来赋给sum;
m /=10; //将m值除以10所得的数取整赋给m;
}
if(sum == val) //判断sum与val是否相等;
printf("Yes!\n"); //如果相等输出Yes!;
else
printf("No!\n"); //如果不等输出No!;
return 0; (如果是VC6.0编译环境,此句可以省略;这句一般在C++程序中是必要的)

}
第2个回答  2013-09-23
# include <stdio.h>//头文件

int main(void)
{
int val;
int m;
int sum = 0;
printf("请输入您需要判断的数字:");
scanf("%d",&val);//输入一个数字
m = val; //把输入的数字赋给m
while (m) //判断m是否为0,不为0时,让数字m进行回文
{
sum = sum * 10 + m%10;//这是求回文的算法
m /=10;
}
if(sum == val)//判断回文数和原数是否一样
printf("Yes!\n");//是输出yes,否则输出no
else
printf("No!\n");
return 0;

}

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网