C语言_回文数

1、需求:键盘输入数字,判断是否为回文数
/*
回文数:
比如:121,12321,1113111
*/

2、代码:

#include <stdio.h>

int main()
{
    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;
}

3、输出结果:

请输入您需要判断的数字:  1113111
Yes!


...Program finished with exit code 0
Press ENTER to exit console.
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 您可以使用以下C语言代码来编写回文数: int main() { int n, reversedInteger = 0, remainder, originalInteger; printf("输入一个整数:"); scanf("%d", &n); originalInteger = n; // 反转整数 while( n!=0 ) { remainder = n%10; reversedInteger = reversedInteger*10 + remainder; n /= 10; } // 检查回文数 if (originalInteger == reversedInteger) printf("%d 是回文数。", originalInteger); else printf("%d 不是回文数。", originalInteger); return 0; } ### 回答2: 以下是用C语言编写的判断一个数是否为回文数的代码: ```c #include <stdio.h> #include <stdbool.h> bool isPalindrome(int num) { int reverse = 0; int original = num; while (num > 0) { reverse = reverse * 10 + num % 10; num /= 10; } return (reverse == original); } int main() { int num; printf("请输入一个整数:"); scanf("%d", &num); if (isPalindrome(num)) { printf("%d是回文数。\n", num); } else { printf("%d不是回文数。\n", num); } return 0; } ``` 该代码首先定义了一个isPalindrome()函数,用于判断一个整数是否为回文数。在函数内部,使用reverse变量来存储数字反转后的结果,original变量存储原始的数字。通过循环,将给定的数字从右至左依次取出个位数,加入reverse中得到反转后的数字。最后,判断反转后的数字和原始数字是否相等,若相等则返回true,表示给定数字是回文数。 在主函数中,通过scanf函数接收用户输入的整数,然后调用isPalindrome函数进行判断,并根据判断结果打印对应的消息。 ### 回答3: 要编写一个判断回文数的C语言代码,可以使用以下步骤: 1. 首先,定义一个整型变量num,用于存储要判断的数值。 2. 通过用户输入,将待判断的数值保存在变量num中。 3. 声明一个变量rev(即反转后的值),并初始化为 0。 4. 使用一个循环将num的各个位数反转,并将结果保存在rev中。具体步骤如下: - 初始化另一个变量temp为num的副本。 - 每次循环开始时,将rev乘以10,然后将temp的个位数加到rev上。 - 更新temp的值,将其除以10,以准备下一次循环。 - 循环直到temp的值变为0为止。 5. 判断num和rev是否相等,如果相等,则说明num是一个回文数;否则,它不是回文数。 6. 在屏幕上输出相应的判断结果。 下面是完整的C语言代码示例: ```c #include <stdio.h> int main() { int num, rev = 0, temp; printf("请输入一个整数:"); scanf("%d", &num); temp = num; while (temp != 0) { rev = rev * 10; rev = rev + temp % 10; temp = temp / 10; } if (num == rev) { printf("%d是一个回文数。\n", num); } else { printf("%d不是一个回文数。\n", num); } return 0; } ``` 在上述代码中,我们使用了while循环来将num反转,然后将反转后的值与原始值进行比较,以判断是否为回文数
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值