标签:大写 main lse 注意 否则 color 要求 忽略 pac
两个长度不超过80的字符串,串中包括大写、小写和空格字符,去掉空格并忽略大小写后,判断两个字符串是否相等。
第1行输入是测试数据的组数n,每组测试数据占两行,第1行是第一个字符串s1,第2行是第二个字符串s2
如果两个字符串相等,则输出YES,否则输出NO
2 a A bb BB ccc CCC Aa BBbb CCCccc a dfadf fasdf adasddfsfsaf
YES
NO
思想:
注意cin对空格的要求,需要getchar() 或者直接用getline()
注意字符串用数组表示时末尾的 ‘\0‘
字符串函数strcmp(),相等的时候输出0
1 #include<iostream> 2 #include<string.h> 3 #include<string> 4 using namespace std; 5 int main(){ 6 int n,i; 7 cin>>n; 8 getchar(); 9 for(i=0;i<n;i++){ 10 int l1,l2,j,k; 11 char a[2][80],b[2][80],p[80]; 12 for(j=0;j<2;j++){ 13 gets(p); 14 strcpy(a[j],p); 15 } 16 l1=strlen(a[0]); 17 l2=strlen(a[1]); 18 k=0; 19 for(j=0;j<l1;j++){ 20 if(a[0][j]>=‘A‘&&a[0][j]<=‘Z‘){ 21 a[0][j]=a[0][j]+32; 22 } 23 } 24 for(j=0;j<l2;j++){ 25 if(a[1][j]>=‘A‘&&a[1][j]<=‘Z‘){ 26 a[1][j]=a[1][j]+32; 27 } 28 } 29 for(j=0;j<l1;j++){ 30 if(a[0][j]!=‘ ‘){ 31 b[0][k++]=a[0][j]; 32 } 33 } 34 b[0][k]=‘\0‘; 35 k=0; 36 for(j=0;j<l2;j++){ 37 if(a[1][j]!=‘ ‘){ 38 b[1][k++]=a[1][j]; 39 } 40 } 41 b[1][k]=‘\0‘; 42 if(strcmp(b[0],b[1])==0){ 43 printf("YES\n"); 44 }else{ 45 printf("NO\n"); 46 } 47 } 48 return 0; 49 }
标签:大写 main lse 注意 否则 color 要求 忽略 pac
原文地址:https://www.cnblogs.com/zq-dmhy/p/11084529.html