回答受付が終了しました

C言語の課題でどうしてもわからないので教えて下さい。 「キーボードから文字列を入力し、aからzの各文字の出現回数を出力するプログラムを作成せよ。」 という問題です。

C言語関連197閲覧

回答(3件)

0

#include <stdio.h> int main(void) { char m[1024]; int i,d[26]; for(i=0;i<26;i++)d[i]=0; printf("==>"); scanf("%s",m); for(i=0;m[i]!='\0';i++)d[m[i]-'a']++; for(i=0;i<26;i++)printf("%c:%d\n",'a'+i,d[i]); return 0; }

0

#include <stdio.h> #include <ctype.h> //Compiler version gcc 6.3.0 #define BUFSIZE 256 int main() { char alpha[26] = {0}; char str[BUFSIZE]; fgets(str,BUFSIZE,stdin); for (int i = 0;str[i] != '\0';i++) { if (islower(str[i])) { alpha[str[i] - 'a']++; } } for (int i = 0;i < 26;i++) { printf("%c : %d\n",'a' + i,alpha[i]); } return 0; } ------------ last night i dreamt of san pedro just like i'd never gone, i knew the song a young girl with eyes like the desert it all seems like yesterday, not far away a : 9 b : 0 c : 0 d : 5 e : 19 f : 2 g : 5 h : 4 i : 10 j : 1 k : 4 l : 7 m : 2 n : 8 o : 6 p : 1 q : 0 r : 7 s : 9 t : 11 u : 2 v : 1 w : 3 x : 0 y : 5 z : 0 Process finished.