求助,实在不理解问题出在哪
查看原帖
求助,实在不理解问题出在哪
439884
Leave旭日冬升楼主2021/12/25 14:54
#include<bits/stdc++.h> 
using namespace std;
char a[27][3000];
struct xu{
 int num;
};
xu A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z;
int  main()
{
 int sum=0;
 for(int i=1;i<=26;i++) a[0][i]=(char)(i+64);
 char s;
 while(cin>>s)
 {
 if(s=='A') a[++A.num][1]='*',sum=max(sum,A.num);
 if(s=='B') a[++B.num][2]='*',sum=max(sum,B.num);
 if(s=='C') a[++C.num][3]='*',sum=max(sum,C.num);
 if(s=='D') a[++D.num][4]='*',sum=max(sum,D.num);
 if(s=='E') a[++E.num][5]='*',sum=max(sum,E.num);
 if(s=='F') a[++F.num][6]='*',sum=max(sum,F.num);
 if(s=='G') a[++G.num][7]='*',sum=max(sum,G.num);
 if(s=='H') a[++H.num][8]='*',sum=max(sum,H.num);
 if(s=='I') a[++I.num][9]='*',sum=max(sum,I.num);
 if(s=='J') a[++J.num][10]='*',sum=max(sum,J.num);
 if(s=='K') a[++K.num][11]='*',sum=max(sum,K.num);
 if(s=='L') a[++L.num][12]='*',sum=max(sum,L.num);
 if(s=='M') a[++M.num][13]='*',sum=max(sum,M.num);
 if(s=='N') a[++N.num][14]='*',sum=max(sum,N.num);
 if(s=='O') a[++O.num][15]='*',sum=max(sum,O.num);
 if(s=='P') a[++P.num][16]='*',sum=max(sum,P.num);
 if(s=='Q') a[++Q.num][17]='*',sum=max(sum,Q.num);
 if(s=='R') a[++R.num][18]='*',sum=max(sum,R.num);
 if(s=='S') a[++S.num][19]='*',sum=max(sum,S.num);
 if(s=='T') a[++T.num][20]='*',sum=max(sum,T.num);
 if(s=='U') a[++U.num][21]='*',sum=max(sum,U.num);
 if(s=='V') a[++V.num][22]='*',sum=max(sum,V.num);
 if(s=='W') a[++W.num][23]='*',sum=max(sum,W.num);
 if(s=='X') a[++X.num][24]='*',sum=max(sum,X.num);
 if(s=='Y') a[++Y.num][25]='*',sum=max(sum,Y.num);
 if(s=='Z') a[++Z.num][26]='*',sum=max(sum,Z.num);
 }
 for(int i=sum;i>=0;i--)
 {
 int sign;
 if(i!=0)
 for(int j=1;j<=26;j++) if(a[i][j]=='*') sign=j;
 else sign=26;
 for(int j=1;j<=sign;j++)
 {
 cout<<a[i][j];
 if(j!=sign) cout<<" ";
} 
 if(i!=0) cout<<endl;
}
 return 0; 
}
2021/12/25 14:54
加载中...