C语言关于统计字母个数问题

题目如图所示,想了很久没有什么思路(特别是如何读入换行符的问题),请教一下大家,谢谢!

img

img

用getchar()逐字符读入

#include <stdio.h>

int main(){
    char c;
    int i,frequency[26]={0};
    while(c=getchar(),c!='#'){
        if(c>='a'&&c<='z'){
            frequency[c-'a']++;
        }
    }
    for(i=0;i<26;i++){
        printf("%c %d\n",'a'+i,frequency[i]);
    }
    return 0;
}
 

这个应该说的是从文件读取,用 fscanf(),类似scanf的用法