大佬们,这个为什么三个RE第二个正确呢
查看原帖
大佬们,这个为什么三个RE第二个正确呢
390929
Raja楼主2020/11/29 00:48
#include<stdio.h>
int cc(char*p){
	int i=0;
	char c;
	while(c=getchar()){
		if(c=='\n'){
			return (i);
		}
		else if(c==' '){
			continue;
		}else{
			//printf("%c",c);
			p[i++]=c;
		}
	}
}
int main(void)
{
	//printf("请输入四行任意大写英文字母(随便输,只要全部是大写英文字母就行)\n");
	char ch[400][400];
	int num[400],i,j,k;
	
	for(i=0;i<4;i++){//存数据 
		num[i]=cc(ch[i]);
		//printf("%d",num[i]);
	}
	int word[300];
	
	for(i=0;i<26;i++){
		word[i]=0;
	}
	
	for(i=0;i<4;i++){
		for(j=0;j<num[i];j++){
			switch(ch[i][j]){
				case 'A':word[0]++;break;
				case 'B':word[1]++;break;
				case 'C':word[2]++;break;
				case 'D':word[3]++;break;
				case 'E':word[4]++;break;
				case 'F':word[5]++;break;
				case 'G':word[6]++;break;
				case 'H':word[7]++;break;
				case 'I':word[8]++;break;
				case 'J':word[9]++;break;
				case 'K':word[10]++;break;
				case 'L':word[11]++;break;
				case 'M':word[12]++;break;
				case 'N':word[13]++;break;
				case 'O':word[14]++;break;
				case 'P':word[15]++;break;
				case 'Q':word[16]++;break;
				case 'R':word[17]++;break;
				case 'S':word[18]++;break;
				case 'T':word[19]++;break;
				case 'U':word[20]++;break;
				case 'V':word[21]++;break;
				case 'W':word[22]++;break;
				case 'X':word[23]++;break;
				case 'Y':word[24]++;break;
				case 'Z':word[25]++;break;
				default:break;																								
			}
		}
	}
	int max=0;
	for(i=0;i<26;i++){
		if(word[i]>max){
			max=word[i];
		}
	}
	
	int n=max;
	for(i=0;i<max;i++){
		for(j=0;j<26;j++){
			if(word[j]>=n){
				printf("*");
				if(j!=25){
					putchar(' ');
				}
			}else{
				printf(" ");
				if(j!=25){
					putchar(' ');
				}
			}
		}
		n--;
		putchar('\n');
	}
	printf("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\n");
	return 0;
 } 
2020/11/29 00:48
加载中...