前提・実現したいこと
数字の出現回数を計算したいです。
(ex)
入力:
15
出力:
1:1
5:5
発生している問題・エラーメッセージ
1000 :0
該当のソースコード
#include <stdio.h> #include<string.h> #include <stdlib.h> int main() { int i; char a[20]; char cnt[127] = { 0, }; int temp; gets(a); for (i = 0; a[i]; i++) { cnt[a[i]]++; } for (i = 0; a[i]; i++) { if (cnt[a[i]] == 0) { continue; } else { for(i=0;i<a[i];i++){ //a for(int j=0;j<(a[i])-1-i;j++){ //b if(a[j]<a[i]){//c temp=a[j]; //d a[j]=a[i]; //e a[i]=temp; //f } //g } //h } //i printf("%c: %d\n", a[i], cnt[a[i]]); cnt[a[i]] = 0; } } return 0; }
試したこと
コードの//a~iまで消すと
7000
7:1
0:3
作動しますが、順番に出力されません。バブルソートで間違った部分がありますか?あったら教えてください
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/05/31 15:23