上题目 Problem Description 读入一个字符串,字符串中包含ZOJ三个字符,个数不一定相等,按ZOJ的顺序输出,当某个字符用完时,剩下的仍然按照ZOJ的顺序输出。
Input 题目包含多组用例,每组用例占一行,包含ZOJ三个字符,当输入“E”时表示输入结束。
1<=length<=100。
Output 对于每组输入,请输出一行,表示按照要求处理后的字符串。
具体可见样例。
Sample Input
ZZOOOJJJ ZZZZOOOOOJJJ ZOOOJJ E
Sample Output
ZOJZOJOJ ZOJZOJZOJZOO ZOJOJO
Source 浙大计算机研究生复试上机考试-2009年 思想就是把ZOJ三个字符存到数组里面然后按顺序输出。 贴代码。
#include#include int main() { char a[105]; int b[105]; while(scanf("%s",a)!=EOF &&a[0]!='E') { memset(b,0,sizeof(b)); int l,i; l=strlen(a); for(i=0;i 0) { printf("Z"); b['Z']--; } if(b['O']>0) { printf("O"); b['O']--; } if(b['J']>0) { printf("J"); b['J']--; } } printf("\n"); } return 0; }