练习1-14 编写一个程序, 打印输入中各个字符出现频度的直方图。


#include <stdio.h> int main() { printf("======打印输入字符频度的直方图======\n"); unsigned int ws[128]; // 字符频度数组。 int i, j, c; i = j = c = 0; // 默认每个字符出现0次。 for (i = 0; i < 128; i++) { ws[i] = 0; } while ((c = getchar()) != EOF) { // 进行字符匹配,如果匹配到字符频度就+1; for (i = 0; i < 128; i++) { if (i == c) { ws[i] += 1; break; } } } // 显示水平直方图。 for (i = 0; i < 128; i++) { if (ws[i] > 0 && i != '\t' && i != '\n' && i != ' ') { printf("%c:", i); for (j = 0; j < ws[i]; j++) { printf("*"); } printf("\n"); } } }

猜你喜欢

转载自www.cnblogs.com/liuhaiqing/p/12769717.html
今日推荐