输入一串字符,字符个数不超过100,且以“.”结束。 判断它们是否构成回文。

输入一串字符,字符个数不超过100,且以“.”结束。 判断它们是否构成回文。

  【分析】所谓回文指从左到右和从右到左读一串字符的值是一样的,如12321,ABCBA,AA等。先读入要判断的一串字符(放入数组letter中),并记住这串字符的长度,然后首尾字符比较,并不断向中间靠拢,就可以判断出是否为回文。

程序如下:

#include<iostream>
using namespace std;
int main()
{
char ch,letter[101];
cin>>ch;
int i=0,j=1;
while(ch!=‘.‘)
{
++i;
letter[i]=ch;
cin>>ch;
}
while((j<i)&&(letter[j]==letter[i]))
{
--i;++j;
}
if(j>=i) cout<<"yes"<<endl;
else cout<<"no"<<endl;
return 0;
}

时间: 2024-12-20 16:33:30

输入一串字符,字符个数不超过100,且以“.”结束。 判断它们是否构成回文。的相关文章

输入任意一个5位数,判断其是否是回文数

输入任意一个5位数,判断其是否是回文数.所谓的回文数是指其个位与万位相同,并且十位与千位相同,比如:12321或者54645: #include <stdio.h>void main(){   int n=0;    printf("请输入任意一个5位数\n");    scanf("%d",&n);   n%10==n/10000&&(n/10)%10==(n/1000)%10 ? printf("%n是一个回文数&q

输入任意一个5位数,判断其是否是回文数。

#include <stdio.h>void main(){ int a; printf("请输入一个5位数"); scanf("%d",&a); (a/10000==a%10&&(a/1000)%10==(a/10)%10)?printf("是回文数\n"):printf("不是回文数\n");} 输入任意一个5位数,判断其是否是回文数.,布布扣,bubuko.com

在控制台输入一串英文字符,然后统计出每个字母出现的次数【忽略大小写】

import java.util.Scanner; public class Demo2 { public static void main(String[] args) { //首先输入一串字符,并将字符转化为小写 Scanner scanner = new Scanner(System.in); System.out.println("请输入一串英文字母"); char[] str = scanner.next().toLowerCase().toCharArray(); //利用

Valid Palindrome ——判断字符串是否为回文串

本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/41488377 Valid Palindrome Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases. For example, "A man, a plan, a canal: Panama&

写一个少于 80 字符的函数,判断一个字符串是不是回文字符串

废话不多说,直接上代码: 1 function isPalindrome(str){ 2 return (str === str.split('').reverse().join('')); 3 } 4 5 console.log(isPalindrome('1 $bb$1')); // false 6 console.log(isPalindrome('1$bb$1')); // true

680. Valid Palindrome II【Easy】【双指针-可以删除一个字符,判断是否能构成回文字符串】

Given a non-empty string s, you may delete at most one character. Judge whether you can make it a palindrome. Example 1: Input: "aba" Output: True Example 2: Input: "abca" Output: True Explanation: You could delete the character 'c'. N

求回文串个数

先整理各路大神的题解 Orz,以后再埋坑 SP7586 NUMOFPAL - Number of Palindromes Description 求一个串中包含几个回文串. Input 输入一个字符串S Output 包含的回文串的个数. 思路一: 用马拉车求出预处理后以每个字母处的回文半径P[i],遍历一遍,ans=ans+P[i]/2,最终ans就是答案 答案是以每一位为中心的回文串长度/2的和,(如果添加字符则为回文半径长度/2.) 不能理解的话,可以看下这个 # a # a # b #

WHU 583 Palindrome ( 回文自动机 &amp;&amp; 本质不同的回文串的个数 )

题目链接 题意 : 给你一个串.要你将其划分成两个串.使得左边的串的本质不同回文子串的个数是右边串的两倍.对于每一个这样子的划分.其对答案的贡献就是左边串的长度.现在要你找出所有这样子的划分.并将贡献乘起来.答案 mod 1e9+7 分析 : 从左到右跑一边回文自动机.对于每个前缀 能够得出其有多少个本质不同的回文子串 本质不同的回文子串的个数实际上就是自动机节点数 - 2 那么跑一遍前缀之后我们能得到所有可作为左边部分串的本质不同回文子串的个数 因为是回文串.所以我们倒着跑一遍.就同样能得到作

判断是否是回文字符

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