Login
Immutable PageDiscussionInfoAttachments
Diff for "rei05/C言語"

MMA
Differences between revisions 17 and 19 (spanning 2 versions)
Revision 17 as of 2012-05-15 17:19:20
Size: 1495
Editor: rei05
Comment:
Revision 19 as of 2012-05-16 20:51:10
Size: 1734
Editor: rei05
Comment:
Deletions are marked like this. Additions are marked like this.
Line 4: Line 4:

  最終的にAcceptedとなった回答です。
 ここはこうした方がいいなど改善すべき点がありましたら是非ご教授お願いします。
Line 9: Line 13:
 * [[http://wiki.mma.club.uec.ac.jp/rei05/C言語/10025|10025]]

C言語

AOJ解答

  • 最終的にAcceptedとなった回答です。
  • ここはこうした方がいいなど改善すべき点がありましたら是非ご教授お願いします。
  • 10020

  • 10021

  • 10022

  • 10023

  • 10024

  • 10025

Help Me!

解決済み

#include<stdio.h>

int main(){

int num,i,pri;
char ch,counter[26]={0};         //counterはintでいいんですね

while(scanf("%c",&ch)!=EOF){     //入力終了条件を\nからEOFに修正
  scanf("%c",&ch);               //←この行は不要
  if('a'<=ch&&ch<='z'){
    num=ch-'a';
    counter[num]++;
  }else if('A'<=ch&&ch<='Z'){
    num=ch-'A';
    counter[num]++;
  }
}

for(i=0;i<=25;i++){
  pri=counter[i];
  printf("%c : %d\n",i+'a',pri);
}

return(0);
}
  • counterをリセットしないと2回目以降の結果がバグると思いますよん-- alstamber 2012-05-08 22:09:37

  • すみません具体的にどこをどう直せば良いですか?問題文を見る限り動かすのは1回でいいと思うのですが。-- rei05 2012-05-09 01:00:33

  • 上記のブログを参考にしたところ1行消して正解でした。-- rei05 2012-05-09 19:07:08

rei05/C言語 (last edited 2012-07-16 17:50:37 by nomeaning)