Problem B: 判断回文字符串

#include<stdio.h>
#include<string.h>
int huiwen(char *str)    //定义回文函数
{
    //char ch[100];
    int len=strlen(str);  //获取字符串的长度
    int i,j,temp;
    for(i=0,j=len-1;i<=j;i++,j--)  //第一位和最后一位相比较循环判断
    {
        if(str[i]==str[j])  //
            temp=1;
        else
        {
            temp=0;
            break;
        }
    }
    return temp;
}
main()
{
    char ch[100];
    //scanf("%s",&ch);  //无法判断特殊字符如空格键;
    while(gets(ch)!=NULL)      //可以判断键盘输入的任意字符
    {
        if(huiwen(ch))
            printf("Yes\n");
        else
            printf("No\n");
    }
    return 0;
}

原文地址:https://www.cnblogs.com/chenlong991223/p/10091002.html

时间: 2024-11-08 11:37:06

Problem B: 判断回文字符串的相关文章

golang 递归判断回文字符串

判断回文字符串是个比较经典的问题. 思路就是拿第一个字符和最一个字符比较,如果不等退出,相同的话继续刚刚的过程,直到第一个字符和最后一个字符相遇或者他们的距离为1时.说明他们是回文字符串. 下面的代码会忽略空白字符 如"1   1  2 1"会让为是回文字符串. golang package main import (     "fmt"     "os"     "strings"     "unicode/utf

C语言 判断回文字符串

判断回文字字符串 #include <stdio.h> void huiwen(char *str) { int len=0; int i; int flag; char *ch=str; while(*ch != '\0') { ch++; len++; } for(i=0;i<=len/2;i++) { if(*str++ == *--ch) { flag=1; i++; } else { flag=0; printf("0"); } } if(flag==1)

Java 判断回文字符串有多少和其中的最大字符串

一.简介代码功能 该代码的功能可以实现对任意的一段字符串进行判断是否有回文,回文有哪些,和其中的最大回文. 二.代码部分 1.全局变量 1 static String hws = ""; 2 static int num = 0; 3 static String[] hw; 2.创建数组用于保存回文 1 /** 2 * 创建数组保存所有的回文 3 * 4 * @return 返回一个String类型的数组 5 */ 6 public static String[] createHw()

判断回文字符串

1 #include "stdafx.h" 2 #include "iostream" 3 4 using namespace std; 5 6 int isechol (const char* str) 7 { 8 int length = strlen(str); 9 for (int i=0; i<length/2; i++) 10 { 11 // 0代表不是,1代表是 12 if (str[i] != str[length-i-1]) 13 { 14

习题8-8 判断回文字符串

https://pintia.cn/problem-sets/12/problems/342 1 bool palindrome(char *s) 2 { 3 int n, i, k; 4 bool ret; 5 6 n = strlen(s); 7 i = 0; 8 k = n - 1; 9 while (i <= k) 10 { 11 if (s[i] != s[k]) 12 { 13 break; 14 } 15 i++; 16 k--; 17 } 18 if (i <= k) 19 {

(C语言)回文字符串的判断

问题描述: 判断一个字符串是否为回文字符串. 程序分析: 回文字符串: (1)是一种特殊的字符串,有着不一样的特点.整个字符串中的每个元素的首尾是相同的,并且内容关于中间"对称". (2)写程序的时候,写一个函数,并且用指针实现判断功能,最后再调用这个函数. (3)在写这个函数的时候,我在主函数里传入一个字符串可以用scanf也可以用gets函数.这个时候如果我想要连续判断字符串是否为回文字符串的时候,我写了一个while循环,这个时候,如果我运用gets这个函数来传入我要判断的字符串

(c语言)回文字符串的判断,gets和scanf

问题描述: 判断一个字符串是否是回文字符串. 程序分析: 回文字符串: 回文字符串是指一个字符中的最高位与最低位的字符是一样的,次高位和次低位上的字符是一样的,以此类推.同时,值得注意的是单个字符,或者多个重复的字符也是回文字符串. (1)定义一个判断回文数的函数,按照上面给出的回文数的定义,我们进行判断. (2)本程序在主函数传入字符串的过程中发现了用gets函数与用scanf函数的不一样之处.我想让这个程序在一个while循环的控制下可以判断多个字符串再结束.这时候如果用gets不断的读取s

判断是否是回文字符串(Java实现)

1.回文的定义:“回文数”就是正读倒读都一样的整数.如奇数个数字:98789,这个数字正读是98789 倒读也是98789.偶数个数字3223也是回文数.字母 abcba 也是回文. 2. 判断一个字符串是否是回文字符串(Java实现) 1 public class Test4 { 2 public static boolean isHuiWen(String text) { 3 int length = text.length(); 4 for (int i = 0; i < length /

判断一个数是否为回文数,字符串是否为回文字符串

使用C语言编写程序 判断一个数是否为回文数.(ps:回文数也是一个数字,数字的特点是正反序是同一个数字,如12321,3443就是回文数). 要判断该数字是否为回文数,可以通过模除得到该数的反序数字,进行比较是否相等来判读. 具体实现如下: void Practice() { int num, value, flag, var; value = 0; flag = 1; scanf("%d", &num); var = num; while(num) {//value存储num