> 唯美句子 > 用C语言判断一个句子是否是回文

用C语言判断一个句子是否是回文

voidmain()

{

charstr[100],*q,* h;//两个指针,一个从前到后,一个从后到前

intk = 1;

printf(& quot;输入次数:\ n & quot);

get(str);

q = str//指向头部

h = str

h = h+strlen(str)-1;//指向屁股

int length = strlen(str)/2+1;

while(k==1)

{

if(长度& lt0)//用来控制只做一半就退出。

{

k = 1;

打破;

}

if((*q)!=(*(h))//这里出问题了

{

k = 0;

打破;

}

q++;

h-;

长度-;

}

if(k==0)

printf(& quot;否& quot);

elseif(k==1)

printf(& quot;是& quot);

}您有n个BUG~ ~错误的原因是指针访问的内存是空然后取值。这是一个大错误

仔细询问

不好意思,刚学指针。

if((*q)!=(* h))& # 047;/我在这里犯了一个错误

{

k = 0;

打破;

}

k=0的时候不停止吗?为什么要控制戒掉只做了一半?。后续行动

不用一半也可以,while里判断当前char是否是空

如果(*(q)= =空)

{

k = 1;

打破;

}

回文五字“山”

花儿到处飞,竹子带来微风。

溪浅潺潺,山青夕阳红。

用C语言判断一个句子是否是回文

绝对!!!# include # include # include void main(){ char a[100];int lenint I;Printf("请输入字符串:");scanf("%s ",a);len = strlen(a);for(I = 0;i & amplt。= len/2;){if(a[i]!= a [len-I-1]) {printf("你输入的不是回文!\ n ");退出(0);} i++;} printf("你输入的是回文!\ n ");}

c语言不能判断回文。帮我看看

# include # include int main(){ char a[50];char b[50];int i,n,j = 0;Printf("请输入字符串");获取(a);n = strlen(a);for(I = n-1;i & ampgt。=0;I-){ b[j]= a[I];j++;} b[j]= ' \ 0 ';If (strcmp (a,b)= 0){ printf("是回文\ n ");} else {printf("非回文\ n ");}返回0;}我在for下面加了一句b[j]='[51] '。

如何判断一个数字在C语言中是否是回文

#include int func(无符号长整型);int main(void){无符号long n;scanf("%lu ",& ampamp。n);printf("%d\n ",func(n));返回0;}int func(无符号long n){无符号long t,m;for(m=0,t = n;t;t/= 10){ m = m * 10+t % 10;} return m = = n;}

c语言判断一个正整数是否是回文,输入任意一个正整数判断是否是回文,以...

展开all # include " stdio . h " int main(int argv,char * argc []) {char s [100],I,k;printf("输入字符串,Ctrl+Z结束...\ n ");while(get(s)){ for(k = 0;s[k];k++);对于(k -,I = 0;I = k)printf(" \ n“% s”是回文字符串\n\n ",s);else printf("\n'%s '不是回文字符串\n\n ",s);}返回0;}运行示例:...

c语言判断是否是回文数。在C语言中,给出一个5位数来判断是否是回文...

程序源代码:main() {long ge,shi,qian,wan,x;scanf("%ld ",& ampx);wan = x/10000;Qian = x % 10000/1000;Shi = x % 100/10;ge = x % 10if(ge = = wan & amp;& ampShi==qian)/*位等于万位,十位等于千*/printf("此数为回文\ n ");else printf("此号码不是回文\ n ");}我的代码:main() {int a,b,c,d;long int n;scanf("%ld ",& ampn);a = n/10000;b =(n % 10000)/1000;c =(n % 100)/10;d = n % 10if(a = = d & amp;& ampb==c) printf("这个%ld是文慧\n ",n);else printf("此%ld不是文慧\n ",n);}

c语言编写一个程序来判断输入的字符串是否是回文。

不用麻烦了,看看这个想法。如果一个字符串是回文,它的两端相对于中心对称,比如12332123-对称点-3211232112-3(对称点)-21。你只需要拿左边的字符,和右边的比较。如果相同,则为回文# include # include " string . h " char st1[100]= { 0 };获取(st1);x = strlen(st1);for(I = 0;i {if(st1[i]!= st1[x-I-1])////这是字符{ break//不是回文}} if (I >: X/2)///如果没有执行break,则是回文printf(" yes ");elseprintf(" NO ");}

如何用if判断c语言中的一个五位数回文

展开all # include # include int check(const char * str){ int I = 0,j = strlen(str)-1;while(I & lt;j ) { if( str[i]!= str[j])返回0;++i,-j;}返回1;} int main(){ char str[32];while( scanf("%s ",str)!= EOF){ printf(str);If (if( Check(str) ){ puts("("是回文数字\ n ");} else {puts("非回文\ n ");} }返回0;}