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

2021-06-25 15:03:46 字數 1491 閱讀 2629

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怎樣實現http請求webservice返回xml資料

webservice 返回的資料本身就是xml 在c 中,用soap呼叫webservice,傳送訊息並取得webservice方法裡返回的內容,用http 的方法 20 假設a是客戶端,b是webservice服務端,使用者通過http協議向伺服器傳送soap請求,webservice返回客戶端x...

用c語言實現FIFO頁面置換演算法,不要是c 或c的看不懂,謝謝

看一下嚴蔚敏的c語言資料結構唄,上面有。其他版本的資料結構書上也有,隨便找一本看看就行。這題目,我前段時間做過!這個不難啊,懂得他的演算法,寫起來不難啊!這個還是那幾個頁面置換演算法裡最簡單的一個,太懶了啊你 用notepad簡單寫了寫,大概寫出了一個佇列queue的操作過程,請參考!有疑問可以 追...

c語言編寫程式用氣泡排序實現升序排列

1 首先開啟一個空白的c語言檔案,首先先定義一組待排序的數列以及各個變數,接著就是用來處理排序的邏輯 2 氣泡排序的邏輯是一組數從第一個數值開始,如果相鄰兩個數的排列順序與期望不同,則將兩個數的位置進行交換,重複這樣的過程直到最後一個數不需要交換則排序完成,如果有n個數需要排序,則需要進行 n 1 ...