代码如下
1 #include <iostream.h> 2 #include <stdlib.h> 3 #include <stdio.h> 4 #include <string.h> 5 int main() 6 { 7 int n,i,j; 8 char a[1001][16]; 9 int num[1001]; 10 while (cin>>n&&n!=0) 11 { 12 getchar(); 13 memset(a,0,sizeof(a)); 14 memset(num,0,sizeof(num)); 15 for (i=0;i<n;i++)
16 { 17 j=0; 18 while ((a[i][j]=getchar())!='\n') 19 j++; 20 21 } 22 23 for(i=0;i<n;i++) 24 { 25 for (j=i+1;j<n;j++) 26 { 27 if (!(strcmp(a[i],a[j]))) 28 { 29 num[i]++; 30 } 31 32 } 33 } 34 int max=-1,sign=0; 35 for (i=0;i<n;i++) 36 { 37 if (num[i]>max) 38 { 39 max=num[i]; 40 sign=i; 41 } 42 } 43 cout<<a[sign]; 44 } 45 return 0; 46 }
当我输入
3
red
red
pink
输出为
ed
r不见了!求各位大神解释啊,不知道哪出问题了!
后来在另一个编译器上编译竟然成功了,汗、、、