用C 怎樣實現行程編碼,比如輸入aaabb輸出3a2b

時間 2021-06-25 15:03:13

1樓:明淵閣

這個很好實現,先掃描一遍字串,把字串中出現的所有字元都存在一個陣列中。

然後從陣列的第一個元素開始,跟字串的每一個元素比較,如果相等,個數就加一。

這樣到最後,把陣列中的元素及出現的次數依次輸出即可。

這裡有兩個陣列,一個是字元陣列,一個是出現次數陣列,二者是一一對應的,輸出的時候按次序輸出就對了。

樓主有不懂的可以繼續問哦。

2樓:

這就相當於求一組數的眾數一樣,眾數就是出現次數最多的數,都要統計各個數出現多少次

**終於編出來了:

#includeusing namespace std;

int main()

;for(int i=0;i<20;i++)else

}for(int b=0,c=0;b<=m,c<=n;b++,c++)cout<

3樓:

我這隻統計了英文字元的個數,並將大小寫統一轉化為小寫來處理。這樣的會,英文字元只有26個,所以你可以申請大小為26的陣列,用於統計每個字元出現的次數。每個字元與 a比較即可。

#include

#include

using namespace std;

void main()

;cout<<"輸入字元"<>s;

char *p;

p = s;

while(*p)

for (int i = 0; i < 26; i++)}}

4樓:金色潛鳥

#include

#include

using namespace std;

main()

if (x==c) n++; else

}輸入aaabb 輸出 3a2b

輸入aaabbcd 輸出 3a2b1c1d

c語言如何實現aaabbcccaabcd輸出為3a2b3c2a1b1c1d這個型別的程式?

5樓:

把輸入賦值給陣列char str

之後用for檢測每兩位的字元是否相同,如果相同就把某一個計數位加上1檢測下一位;如果不同加上1(雖然不同但是現在檢測這個字母還是要算上的)輸出計數位,輸出字母,清零計數位,繼續判斷下一位

總而言之這種有簡單規律的東西**量應該不會很大。

我寫這個文完全是想讓你理解大致的思維框架,不以**方式呈現,希望你能讀得更明白,能夠更好練習

6樓:三天打魚

char a[1024];

scanf("%s",a);

for(int i=0;a[i];){

char c=a[i];

int len=1;

for(;a[++i]==c;len++);

printf("%d%c",len,c);

你那個錯的多……

用C 程式設計實現函式,輸入任意麵值人民幣時,輸入按面值1兌換的結果

include include 在這裡定義貨幣面值,可任意修改和新增,但是最後一個必須為1int money int main 輸入數值 868100面值8張 50面值1張 10面值1張 5面值1張 2面值1張 1面值1張 請按任意鍵繼續. include using namespace std i...

用C語言程式實現 輸入整數,輸出其中最大的數,及其出現的次數

include int main void int a 0,x 10 i,max printf please enter x 0 n scanf d x 0 max x 0 printf please enter x i n for i 1 i 9 i scanf d x i if max 我幫你測...

用C語言 函式程式設計 實現輸入兩個數求出最大值

2012年3月11日15 10 42 目的 求n個數中的較大者。include int main 用c語言編寫 編寫一個函式,要求在主函式中輸入兩個數,輸出其中最大值。比較兩個數的大小可以使用三目運算子 三目運算子 表示式1 表示式2 表示式3 其含義是 先求表示式1的值,如果為真,則執行表示式2,...