C语言程序练习-L1-023 输出GPLT (20分)
生活随笔
收集整理的這篇文章主要介紹了
C语言程序练习-L1-023 输出GPLT (20分)
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
L1-023 輸出GPLT (20分)
給定一個(gè)長(zhǎng)度不超過(guò)10000的、僅由英文字母構(gòu)成的字符串。請(qǐng)將字符重新調(diào)整順序,按GPLTGPLT…這樣的順序輸出,并忽略其它字符。當(dāng)然,四種字符(不區(qū)分大小寫)的個(gè)數(shù)不一定是一樣多的,若某種字符已經(jīng)輸出完,則余下的字符仍按GPLT的順序打印,直到所有字符都被輸出。
輸入格式:
輸入在一行中給出一個(gè)長(zhǎng)度不超過(guò)10000的、僅由英文字母構(gòu)成的非空字符串。
輸出格式:
在一行中按題目要求輸出排序后的字符串。題目保證輸出非空。
輸入樣例:
pcTclnGloRgLrtLhgljkLhGFauPewSKgt
輸出樣例:
GPLTGPLTGLTGLGLL
//這也是一道簡(jiǎn)單的分支循環(huán)題 #include<stdio.h> #include<string.h> int main() {char s[10050];int arr[4]={0,0,0,0};scanf("%s",s);int len = strlen(s);for(int i=0;i<len;i++){if(s[i] == 'G'||s[i] == 'g') arr[0]++;if(s[i] == 'P'||s[i] == 'p') arr[1]++;if(s[i] == 'L'||s[i] == 'l') arr[2]++;if(s[i] == 'T'||s[i] == 't') arr[3]++;}while(arr[0]+arr[1]+arr[2]+arr[3]){if(arr[0]>0){printf("G");arr[0]--;}if(arr[1]>0){printf("P");arr[1]--;}if(arr[2]>0){printf("L");arr[2]--;}if(arr[3]>0){printf("T");arr[3]--;}} }總結(jié)
以上是生活随笔為你收集整理的C语言程序练习-L1-023 输出GPLT (20分)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: C语言程序练习-L1-018 大笨钟 (
- 下一篇: C语言程序练习-L1-032 Left-