判断回文(c语言实现)

Posted 低调小一

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了判断回文(c语言实现)相关的知识,希望对你有一定的参考价值。

判断回文确实是一个写烂的代码了,创建一个标志位flag即可,但是早上活跃一下头脑,复习一下

题目

题目描述:
给出一个长度不超过1000的字符串,判断它是不是回文(顺读,逆读均相同)的。
输入:
输入包括一行字符串,其长度不超过1000。
输出:
可能有多组测试数据,对于每组数据,如果是回文字符串则输出"Yes!”,否则输出"No!"。
样例输入:
hellolleh
helloworld
样例输出:
Yes!
No!

数组实现

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()

	char str[1001];
	int len, flag, i;

	while(scanf("%s",str) != EOF)
	
		flag = 1;
		len = strlen(str);

		for(i = 0; i < len/2; i ++)
		
			if(str[i] != str[len - 1 -i])
			
				flag = 0;
				break;
			
		
		if(flag)
			printf("Yes!\\n");
		else
			printf("No!\\n");
	

	return 0;

指针操作

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
void isSymmetrical(char *str)

    char *begin, *end;
    int flag, len = strlen(str);
 
    for (begin = str, end = str + len - 1, flag = 1; begin <= end; begin ++, end --) 
        if (*begin != *end) 
            flag = 0;
            break;
        
    
 
    if (flag)
        printf("Yes!\\n");
    else
        printf("No!\\n");

 
 
int main(void)

    char str[1001];
 
    while (gets(str)) 
        isSymmetrical(str);
    
 
    return 0;

 
/**************************************************************
    Problem: 1192
    User: wangzhengyi
    Language: C
    Result: Accepted
    Time:10 ms
    Memory:912 kb
****************************************************************/


以上是关于判断回文(c语言实现)的主要内容,如果未能解决你的问题,请参考以下文章

判断回文(c语言实现)

回文字符串——递归。C语言。

C语言实现任意输入一个数,判断是否为回文数

C语言 关于判断回文数的程序

c语言,利用递归判断回文

C语言怎么判断一个数是不是是回文数?