c语言编写程序:输入一个字符,如果该字符为回文输出“回文”,若该
发布网友
发布时间:2022-10-13 08:03
我来回答
共1个回答
热心网友
时间:2023-11-01 19:50
首先,输入一个字符肯定不够,一个字符串才行。
我们先用一个数组储存字符串,之后分别比较第i位与倒数第i位的值就可以知道是不是回文了。
代码如下:
#include<stdio.h>
#include<string.h>
#define size 1000
int main(){
char m[size];
int i,l;
gets(m);
l = strlen(m);//计算长度
printf("原字符串");
for(i = 0; i <= l/2;i++){
if(m[i] != m[-i]){
printf("不");//判断
break;
}
}
printf("是回文。");
return 0;
}
追问i小于等于1/2?有没有少了什么?
追答i的值小于字符串长度L的一半,这样只是比较前一半与后一半是否一一对应。至于只比一半是为了减少不必要的运算,节省内存。