1. 程式人生 > >C語言:大小寫不敏感之字串比較

C語言:大小寫不敏感之字串比較

在這裡插入圖片描述

自己寫的:

#include <stdio.h>
int strcmpl(char a[],char b[])
{
    int i,flag=0;
    for(i=0;a[i]!='\0'||b[i]!='\0';i++)
    {
    	if(a[i]-b[i]==0||a[i]-b[i]==32||a[i]-b[i]==-32) flag=1;
    	else  break;
	}
	return flag;
}

int main()
{
	char a[101],b[101];
	scanf("%s%s",&a,&b);
	if(strcmpl(a,b)) printf("EQUAL\n");
	else
	    printf("NOT EQUAL\n");
    return 0;
}

別人寫的:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#define SIZE 101

int main()
{
    char a[SIZE];
    char b[SIZE];
    scanf("%s %s",a,b);
    int i;
    for(i = 0; i < SIZE; i++)
    {
        a[i] = tolower(a[i]);
        b[i] = tolower(b[i]);
    }
    if(strcmp(a,b)) printf("NOT EQUAL\n");
    else printf("EQUAL\n");
    return 0;
}