c语言编写一个程序 打印输入中单词长度的直方图 max为什么是20,打印输入中单词长度的直方图...

maxvalue=0;

for(i=1;i

if(wl[i]>maxvalue)

maxvalue=wl[i];

for(i=1;i

{

printf("%5d-%5d:",i,wl[i]);

if(wl[i]>0)

{

if((len=wl[i]+MAXHIST/maxvalue)<=0)

len=1;

}

else

len=0;

while(len>0)

{

putchar('*');

--len;                                 //为什么要--len?

}

putchar('\n');

}

if(ovflow>0)

printf("there are %d words >=%d\n",ovflow,MAXWORD);

问题:1

if((len=wl[i]*MAXHIST/maxvalue)<=0)

len=1;   这段话表示什么意思?

问题:2

while(len>0)

{

putchar('*');

--len;

}这段话与上面的if((len=wl[i]*MAXHIST/maxvalue)<=0)有什么关系吗?

问题3:

为什么一定要求最大数值?且以此为标准?

for(i=1;i

if(wl[i]>maxvalue)

maxvalue=wl[i];

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值