打印输入中单词长度的直方图,该怎么处理
打印输入中单词长度的直方图
我是菜鸟,不知道以下程序错误在哪,没法打印直方图
#include <stdio.h>
#define MAXNUMBER 15
void main()
{
int nc=0;
int i;
int n;
int w[MAXNUMBER];
int c;
for(i=0;i<MAXNUMBER;i++)//w[]是单词数组
{
w[i]=0;//各个单词初始时都是0个字母
}
while((c=getchar())!=EOF)//计算每个单词的字母数
{
if(c==' '||c=='\t'||'\n')
{
w[i]=nc;
++i;
nc=0;
}
if(c!=' '&&c!='\t'&&c!='\n')
++nc;
}
for(i=0;i<MAXNUMBER;i++)//打印直方图
{
for(n=1;n<w[i];n++)
printf("%c",'*');
printf("%c",'\n');
}
}
------解决方案--------------------
------解决方案--------------------
我是菜鸟,不知道以下程序错误在哪,没法打印直方图
#include <stdio.h>
#define MAXNUMBER 15
void main()
{
int nc=0;
int i;
int n;
int w[MAXNUMBER];
int c;
for(i=0;i<MAXNUMBER;i++)//w[]是单词数组
{
w[i]=0;//各个单词初始时都是0个字母
}
while((c=getchar())!=EOF)//计算每个单词的字母数
{
if(c==' '||c=='\t'||'\n')
{
w[i]=nc;
++i;
nc=0;
}
if(c!=' '&&c!='\t'&&c!='\n')
++nc;
}
for(i=0;i<MAXNUMBER;i++)//打印直方图
{
for(n=1;n<w[i];n++)
printf("%c",'*');
printf("%c",'\n');
}
}
------解决方案--------------------
#include <stdio.h>
#define MAXNUMBER 15
void main()
{
int nc=0;
int i;
int n;
int w[MAXNUMBER];
int c;
for(i=0;i<MAXNUMBER;i++)//w[]是单词数组
{
w[i]=0;//各个单词初始时都是0个字母
}
//注意:你的i值已经是MAXNUMBER
i=0;//恢复为0值
while((c=getchar())!=EOF)//计算每个单词的字母数
{
if(c==' '
------解决方案--------------------
c=='\t'
------解决方案--------------------
c=='\n')//if(c==' '
------解决方案--------------------
c=='\t'
------解决方案--------------------
'\n')少了个判断语句
{
w[i]=nc;
++i;
nc=0;//
}
else//用else代替吧
{//if(c!=' '&&c!='\t'&&c!='\n')
++nc;
}
}
for(i=0;i<MAXNUMBER;i++)//打印直方图
{
for(n=0;n<w[i];n++)
{
printf("%c",'*');
}
printf("%c",'\n');
}
}
------解决方案--------------------
#include <stdio.h>
#define MAXNUMBER 15
void main()
{
int nc=0;
int i;
int n;
int w[MAXNUMBER];
int c;
for(i=0;i<MAXNUMBER;i++)//w[]是单词数组
{
w[i]=0;//各个单词初始时都是0个字母
}
//注意:你的i值已经是MAXNUMBER
i=0;//恢复为0值
while((c=getchar())!=EOF)//计算每个单词的字母数
{
if(c==' '
------解决方案--------------------
c=='\t'
------解决方案--------------------
c=='\n')//if(c==' '
------解决方案--------------------
c=='\t'
------解决方案--------------------
'\n')少了个判断语句
{
w[i]=nc;
++i;
nc=0;//
}
else//用else代替吧
{//if(c!=' '&&c!='\t'&&c!='\n')
++nc;
}
}
for(i=0;i<MAXNUMBER;i++)//打印直方图
{
for(n=0;n<w[i];n++)
{
printf("%c",'*');
}
printf("%c",'\n');
}
}
//这****怎么这么烂啊,最近老是回复看不到,我擦。