01/10/2018, 09:41

Nhờ mọi người kiểm tra lỗi chương trình kiểm tra dãy palindrome

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

	
void xoa(char s[])
{	
	for(int i=0;s[i]!='';i++) 
	{ 
		if(not (s[i]>='a' && s[i] <='z') && not  (s[i]>= 'A' && s[i]<='Z')) 
		{ 
			int j = i; 
			while(s[j+1]!='') 
				{ 	s[j] = s[j+1]; 
					j++; 
						} 
						s[j] = '';
						 i--;
	} 
	}
	}

void chinhsua(char s[])
{
	for(int i=0;i<strlen(s);i++)
	if(s[i]>= 'a' && s[i]<= 'z')
	s[i]= s[i] -32;
}
int main()
{
	int n;
	scanf("%d",&n);
	char s[1000];
	for(int l=0;l<n;l++)
	{
	fflush(stdin);
	gets(s);
	fflush(stdin);
	xoa(s);
	chinhsua(s);
	int kt=0;
	int j=strlen(s)-1;
	for(int i=0;i<strlen(s);i++)
	{
		if(s[i] != s[j]) kt=1;
		j--;
		}	
	if(kt==1) printf("No 
");
	else printf("Yes 
");
	}
	}
HK boy viết 11:57 ngày 01/10/2018

Lại một thanh niên căn dòng vô tội vạ :v bạn phải đăng lên bạn đang gặp lỗi gì chứ :v
Mà hàm xoá trông không ổn lắm @@ Bạn nên tạo một xâu tmp chứa tất cả những kí tự là chữ cái trong xâu s, kiểu như

if (('a'<=s[i] && s[i]<='z') || ('A'<=s[i] && s[i] <= 'Z')) {
    tmp += s[i]
}
Bài liên quan
0