练习是打印输入中不同字符的直方图。底部是我的代码,我将不同的字符分为 3 个类别 a、b 或其他,如果代码成功,可以推断出更多类别的字符。但它没有我想要的输出,例如,对于ab cd
我期望的输入
x
xxx
---
abo
t
h
e
r
但我得到的只是
---
abo
t
h
e
r
这是我的尝试:
#include<stdio.h>
main()
{
int i,c,b, max;
int array[3] = {0,0,0};
while( (c = getchar()) != EOF){
if(c== 'a')
++array[0];
else if(c== 'b')
++array[1];
else if(c=='\n' ||c=='\t' || c==' '){}
else ++array[2];
}
array[0]=max;
i=0;
while(i<3){
if(max>=array[i])
{}
else array[i]=max;
++i;
}
i=0;
max=b;
while(i<b){
if(array[0]>=max){
putchar('x');}
else putchar(' ');
if(array[1]>=max) {
putchar('x');}
else putchar(' ');
if (array[2]>=max){
putchar('x\n');}
else putchar(' \n');
--max;
++i;
}
printf("---\nabo\n t\n h\n e\n r");
}