c语言技巧性试题注解

C语言试题如下:

要求:用fun函数判断字符串是否为回文,回文特性:顺读和倒读一样。如“level”,而字符串123312便不是

 #include<stdio.h>
 #define N 80
 int fun(char*str){
	 
 }
 main(){
	 char s[n];
	 printf("Enter a string:");
	 gets(s);
	 printf("\n\n");
	 puts(s);
	 if(fun(s))
	 {
		 printf("YES\n");
	 }
	 else{
		 printf("NO\n");
	 }
 }

答案如下:

 int fun(char*str){
	 int i,n=0,fg=1;
	 char *p=str;
     1  /*先获取字符串大小n值:采用指针循环移动至末尾的方式*/
	 while(*p){
		 n++;
		 p++;
	 }
     2  /*前后是否相等,并遍历到中间*/
	 for(i=0;i<n/2;i++){
		 if(str[i]==str[n-1-i]);
		 else{
			 fg=0;
			 break;
		 }
		 return fg;
	 }
 }

猜你喜欢

转载自blog.csdn.net/iubuntu_qi/article/details/82177119
今日推荐