**C语言简单判断字符串是否为回文**
哈哈哈哈哈,作为一个刚学c语言不久的小白,今天来分享一下自己今天学到的一个判断字符串是否为回文的解决方法_(:з」∠)_
小白用的编译器是Visual Studio 2019版本的哈哈哈。
小白第一次写博客还请请多多包涵ԅ(¯ㅂ¯ԅ)嘿嘿嘿
- 编译嘛,首先不能忘记的就是在编译器在运用过程可能需要用的头文件。
写好头文件之后,在这我们要先了解一个函数,gets(),因为这个对我们输入字符串存储到数组中毕竟方便。
char str【100】
gets从标准输入设备读字符串函数,其可以无限读取,不会判断上限,以回车结束读取
str【】必须是char型数组。
gets遇到空格不会停止输入,只有遇到换行符才会停止输入;
不管输入多少个空格,gets都会如实记录控制台输入的数据;
顺便strlen()能记录str【】这个字符型数组中的字符串长度。
下面就是编码区了ԅ(¯ㅂ¯ԅ) - 代码区
因为我个人比较喜欢整洁,所以我一般不想主函数里面太多代码,所以就直接来调用函数到主函数中,这样看着就不会太乱了,同时这对以后养成模块化设计帮助挺大的。
然后图中有一些注释 方便理解(ಡωಡ)
我可真是个贴心宝宝
#include<stdio.h>
#include<string.h>
void huiwen();
int main()
{
huiwen();
return 0;
}
void huiwen()
{
char str[100]; //存储字符串
int i, j, n;
printf("请输入一段字符串:");
gets_s(str); //gets从标准输入设备读取字符串 并赋给数组str
n = strlen(str); //获取字符串的长度 strlen要包含<string.h>的头文件
for (i = 0, j = n - 1; i < j; i++, j--)//i从数组第一个元素向后开始,j从最后一个元素向前开始,直到i大于j 结束循环
if (str[i] != str[j])
break; //
if (i >= j)
printf("是回文!\n");
else
printf("不是回文!\n");
}
哈哈哈哈以上就是这次内容了(ಡωಡ)
下次有时间就更新(⑉°з°)-♡(我是鸽子)