问题描述
大家好,我目前正在阅读“C 编程语言”,当我在做其中一项练习时,我无法解决其中一项。问题编号是 1-13。它说
编写一个程序来打印输入中单词长度的直方图。这很容易,所以用水平条绘制直方图;垂直方向更具挑战性
所以我为问题的第一部分编写了这段代码,计数:
#include<stdio.h>
int main(void)
{
char c;
int arr[100];
while((c = getchar()) != EOF)
{
int i = 0;
while(c != ' ' || c != '\t' || c != '\n')
{
i++;
c = getchar();
}
arr[i]++;
}
}
但我无法让它工作,它总是在循环中停留在几秒钟内。这个:
while(c != ' ' || c != '\t' || c != '\n')
{
i++;
c = getchar();
}
你们知道为什么吗?我已经盯着这段代码看了 30 分钟,之前的练习中也有类似的代码,但我无法发布它们的代码,因为我删除了它们。如有造成不便,敬请谅解。
我也查看了 Print a Histogram based on word lengths (C),但我仍然不知道为什么我的代码不起作用。
我用 gcc main.c
编译它并用 cat main.c | ./a.out
运行它
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)