非常感谢!可是能帮我看看这个为什么不行吗
#include<stdio.h>
#include<string.h>
#include<ctype.h>
#define size 100
bool solve(char *a,char *b,int m,int n);
int main(){
int m,n,i,j;
char a[size];
char b[size];
fgets(a,size,stdin);
fgets(b,size,stdin);
m=strlen(a);
n=strlen(b);
for(i=0;i<m;i++)
toupper(a[i]);
for(j=0;j<n;j++)
toupper(b[j]);
if(solve(a,b,m,n))
puts("Yes");
else
puts("NO");
}
bool solve(char a[],char b[],int m,int n){
int i,j,k;
bool p=true;
for(i=0;i<m;i++){
for(j=0;j<n;j++){
if((a[i]==b[j])&&(isupper(b[j])))
tolower(b[j]);
}
}
for(k=0;k<n;k++){
if(isupper(b[k]))
p=false;
}
}
#include<stdio.h>
#include<string.h>
#include<ctype.h>
#define size 100
bool solve(char *a,char *b,int m,int n);
int main(){
int m,n,i,j;
char a[size];
char b[size];
fgets(a,size,stdin);
fgets(b,size,stdin);
m=strlen(a);
n=strlen(b);
for(i=0;i<m;i++)
toupper(a[i]);
for(j=0;j<n;j++)
toupper(b[j]);
if(solve(a,b,m,n))
puts("Yes");
else
puts("NO");
}
bool solve(char a[],char b[],int m,int n){
int i,j,k;
bool p=true;
for(i=0;i<m;i++){
for(j=0;j<n;j++){
if((a[i]==b[j])&&(isupper(b[j])))
tolower(b[j]);
}
}
for(k=0;k<n;k++){
if(isupper(b[k]))
p=false;
}
}