1. 程式人生 > >【C語言】判斷一個數是不是迴文數

【C語言】判斷一個數是不是迴文數



所謂迴文數,就是說一個數字從左邊讀和從右邊讀的結果是一模一樣的。

首先,我們來判斷一下一個數是否為迴文數:

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
int main()
{
	int a = 0;
	int b = 0;
	int c = 0;
	int d = 0;
	printf("請輸入一個數字:\n");
	scanf("%d", &a);
	d = a;
	while (a)
	{
		c = a  % 10;
		a = a / 10;
		b = b * 10 + c;
	}
	if (b == d)
	{
		printf("該數是迴文數!\n");
	}
	else
	{
		printf("該數不是迴文數!\n");
	}
	return 0;
}

那麼,判斷完一個數字是否為迴文數之後,再來判斷一下一個字串是否為迴文字串:

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
	char arr1[6] = { 0 };
	char arr2[6] = { 0 };
	int i = 0;
	int left = 0;
	int right = 4;
	printf("請輸入一個字串:\n");
	scanf("%s", arr1);
	strcpy(arr2, arr1);
	while (left <= right)
	{
		char tmp = 0;
		tmp = arr2[left];
		arr2[left] = arr2[right];
		arr2[right] = tmp;
		left++;
		right--;
	}
	if (strcmp(arr1, arr2) == 0)
	{
		printf("該字串是迴文字串!\n");
	}
	else
	{
		printf("該字串不是迴文字串!\n");

	}
	return 0;
}