【C语言】判断一个数是不是回文数

今天药忘吃喽~ 2022-07-16 04:21 334阅读 0赞



所谓回文数,就是说一个数字从左边读和从右边读的结果是一模一样的。

首先,我们来判断一下一个数是否为回文数:

  1. #define _CRT_SECURE_NO_WARNINGS 1
  2. #include<stdio.h>
  3. #include<stdlib.h>
  4. int main()
  5. {
  6. int a = 0;
  7. int b = 0;
  8. int c = 0;
  9. int d = 0;
  10. printf("请输入一个数字:\n");
  11. scanf("%d", &a);
  12. d = a;
  13. while (a)
  14. {
  15. c = a % 10;
  16. a = a / 10;
  17. b = b * 10 + c;
  18. }
  19. if (b == d)
  20. {
  21. printf("该数是回文数!\n");
  22. }
  23. else
  24. {
  25. printf("该数不是回文数!\n");
  26. }
  27. return 0;
  28. }

那么,判断完一个数字是否为回文数之后,再来判断一下一个字符串是否为回文字符串:

  1. #define _CRT_SECURE_NO_WARNINGS 1
  2. #include<stdio.h>
  3. #include<stdlib.h>
  4. #include<string.h>
  5. int main()
  6. {
  7. char arr1[6] = { 0 };
  8. char arr2[6] = { 0 };
  9. int i = 0;
  10. int left = 0;
  11. int right = 4;
  12. printf("请输入一个字符串:\n");
  13. scanf("%s", arr1);
  14. strcpy(arr2, arr1);
  15. while (left <= right)
  16. {
  17. char tmp = 0;
  18. tmp = arr2[left];
  19. arr2[left] = arr2[right];
  20. arr2[right] = tmp;
  21. left++;
  22. right--;
  23. }
  24. if (strcmp(arr1, arr2) == 0)
  25. {
  26. printf("该字符串是回文字符串!\n");
  27. }
  28. else
  29. {
  30. printf("该字符串不是回文字符串!\n");
  31. }
  32. return 0;
  33. }

发表评论

表情:
评论列表 (有 0 条评论,334人围观)

还没有评论,来说两句吧...

相关阅读