判断是否是回文字符

 1 //判断字符串是否是回文字符
 2 #include<stdio.h>
 3 #include<string.h>  //字符串的strlen函数
 4 int main()
 5 {
 6     int i, j;
 7     char ch[100];
 8     gets(ch);  //字符串输入
 9     i = 0;
10     j = strlen(ch) - 1;
11     while (i<j)
12     {
13         if (ch[i]==ch[j])
14         {
15             i++;
16             j--;
17         }
18         else
19             break;
20     }
21     if (i >= j)
22         printf("yes!\n");
23     else
24         printf("No.");
25
26     return 0;
27 }

原文地址:https://www.cnblogs.com/old-horse/p/12686422.html

时间: 2024-10-11 21:34:59

判断是否是回文字符的相关文章

添加字符判断是否为回文串

题目:给定一个字符串,问是否能通过添加一个字母将其变为回文串. 提要:所有代码皆为C++语言. 看到题,首先想到如何判断回文串 注:回文串添加或删除指定字符一定还是回文串. 对于一个字符串,从左右两端开始,以此判断,直到读取超出字符串中间. 代码如下: #include<iostream> #include<string.h> using namespace std; bool JudgeReverseString(char *str) { //对比对应位置字符是否相同 int l

一个5位数,判断它是不是回文数

题目:一个5位数,判断它是不是回文数.即12321是回文数,个位与万位相同,十位与千位相同. 1 package com.li.FiftyAlgorthm; 2 3 import java.util.Scanner; 4 5 /** 6 * 题目:一个5位数,判断它是不是回文数.即12321是回文数,个位与万位相同,十位与千位相同. 7 * @author yejin 8 */ 9 public class Palindrom { 10 public static void main(Strin

zju 2744 回文字符 hdu 1544

#include<iostream> #include<algorithm> using namespace std; int main() { string s; while(cin>>s) { int i,begin,end,total = s.size(),l = s.size(); for(i = 0 ; i < s.size(); ++i) { begin = i - 1; end = i+1;//当字符串长度为奇数时 while(s[begin]==s

判断链表是否回文,空间复杂度不多于 O(1) 时间复杂度不多于 O(n)

要判断是否是回文链表这本身不难,难就难在对那两个复杂度的要求太恶心了. 我一开始的想法是先找出链表的中点,再向两边遍历,以右结点为空作为循环结束的条件.感觉挺好哈,可是这特么是单向链表. 然后我琢磨像 12321 这样的有一个特点,就是 1 + 3 = 2 + 2 = 3 + 1 觉得我特么简直就是天才,居然发现了这么神奇的数学规律,请叫我 X 欧拉. 直到我发现了 000111 = = -> T-T -> QAQ 最终的解决方法是我看了一些博客之后总结的,就是利用递归不断地向后找,直到找到最

Java编程判断是否是回文数

import javax.swing.JOptionPane; 自然数中还有一类数被称为回文数.回文数就是一个数的两边对称,如11,121,1221,9339,30203等等 public class CircleTest{ public static void main(String[] args){ String inputValue = JOptionPane.showInputDialog("请输入一个整数"); StringBuffer source = new String

编程之美2015资格赛:回文字符序列

题目2 : 回文字符序列 时间限制:2000ms 单点时限:1000ms 内存限制:256MB 描述 给定字符串,求它的回文子序列个数.回文子序列反转字符顺序后仍然与原序列相同.例如字符串aba中,回文子序列为"a", "a", "aa", "b", "aba",共5个.内容相同位置不同的子序列算不同的子序列. 输入 第一行一个整数T,表示数据组数.之后是T组数据,每组数据为一行字符串. 输出 对于每组数据

java编写输入一个数判断是否是回文数,所谓回文数比如121,1221,6778776

package com.hao947; import java.util.Scanner; public class demo5 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int x = 0; x = scanner.nextInt(); System.out.println("请输入一个4-8位的数"); int dig[] = new int[10]; i

C语言-郝斌笔记-004判断是否为回文数

判断是否为回文数 1 # include <stdio.h> 2 3 int main(void) 4 { 5 int val; //存放待判断的数字 6 int m; 7 int sum = 0; 8 9 printf("请输入您需要判断的数字: "); 10 scanf("%d", &val); 11 12 m = val; 13 while (m) 14 { 15 sum = sum * 10 + m%10; 16 m /= 10; 17

微软编程之美——回文字符序列

描述 给定字符串,求它的回文子序列个数.回文子序列反转字符顺序后仍然与原序列相同.例如字符串aba中,回文子序列为"a", "a", "aa", "b", "aba",共5个.内容相同位置不同的子序列算不同的子序列. 限制 时间限制:2000ms 单点时限:1000ms 内存限制:256MB 输入 第一行一个整数T,表示数据组数.之后是T组数据,每组数据为一行字符串. 输出 对于每组数据输出一行,格式为&q