11、GPLT文字列の問題

11、GPLT文字列の問題

入力フォーマット
唯一の行の文字からなるない10,000以上、非空の文字列の所定の長さを入力してください。

出力フォーマット
1行のトピック発注要件により、出力文字列インチ トピックは、出力が空でないことを確認してください。

サンプル入力
pcTclnGloRgLrtLhgljkLhGFauPewSKgtの
サンプル出力
GPLTGPLTGLTGLGLL

#include<stdio.h>
int main(){
	char ch, a[]="pcTclnGloRgLrtLhgljkLhGFauPewSKgt";
	int i=0, b[4]={0};		//b[0]统计字符串中G/g的数目,b[1]统计P/p... 
	
//统计各字符数目 
	ch=a[i];
	while(ch!='\0'){
		switch(ch){
			case 'G':case 'g':b[0]++;break;
			case 'P':case 'p':b[1]++;break;
			case 'L':case 'l':b[2]++;break;
			case 'T':case 't':b[3]++;break;	
		}
		i++;
		ch=a[i];
	}
	
//b[i]不为零则输出b[i]对应的字符
	while(1){
		if(b[0]!=0){
			putchar('G');
			b[0]--;
		}
		if(b[1]!=0){
			putchar('P');
			b[1]--;
		}
		if(b[2]!=0){
			putchar('L');
			b[2]--;
		}
		if(b[3]!=0){
			putchar('T');
			b[3]--;
		}
		if(b[0]==0 && b[1]==0 && b[2]==0 && b[3]==0)
			break;
	} 
	
	return 0;
} 
公開された16元の記事 ウォンの賞賛0 ビュー320

おすすめ

転載: blog.csdn.net/NAU_LHT/article/details/104333345