每日一题:用c语言实现:判断该数是否为对称数

该C语言程序通过输入一个整数,使用while循环和位操作判断其是否为对称数,如果数值与其倒置后相等,则输出yes,否则输出no。
摘要由CSDN通过智能技术生成

题目:输入一个整型数,判断是否是对称数,如果是,输出yes,否则输出no,不用考虑这个整型数过大,int类型存不下,不用考虑负值;例如12321就是一个对称数,左右对称

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>  

int main() {
	//要求:输入一个整型数,判断是否是对称数,如果是,输出yes,否则输出no,不用考虑这个整型数过大,int类型存不下,不用考虑负值;
	//例如:12321是对称数,输出yes
	int num,num1=0,backup_num;
	//num是用户传入的值,num1是倒置后的数,backup_num是对num备份的变量
	printf("请您输入一个整数:");
	scanf("%d", &num);
	backup_num = num;//备份num的值
	while (num) {
		//每回都得到当前num的个位
		num1 =num1*10+ num %10;
		//对num每次除以10.即得到每回剔除个位后的数,再加上上次个位的数乘以10
		num=num/ 10;
		//直到num=0结束,所以循环条件是num的值
	}
	printf("%d\n",num1);
	//判断与倒置后的数是否相等
	if (num1==backup_num)
	{
		printf("yes\n");
	}
	else
	{
		printf("no\n");
	}

	return 0;
}

结果:


 代码的讲解已经在代码部分注释好了,如果有啥其他问题的评论区滴滴我嗷~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值