分享一个大牛的人工智能教程。零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请点击人工智能教程
/*
* Write a program to print a histogram of the lengths of words in ts input.
*
* Histogram_WordLen.c - by FreeMan
*/
#include <stdio.h>
#define MAXWORDLEN 16
#define IN 1
#define OUT 0
int main()
{
int c = EOF;
int i = 0;
int j = 0;
int lens[MAXWORDLEN + 1];
int state = IN;
int nc = 0;
for (i = 0; i < +MAXWORDLEN; ++i)
{
lens[i] = 0;
}
while ((c = getchar()) != EOF)
{
++nc;
if (c == ' ' || c == '\t' || c == '\n')
{
state = OUT;
--nc;
}
if (state == OUT)
{
if (nc != 0 && nc <= MAXWORDLEN)
{
++lens[nc];
}
state = IN;
nc = 0;
}
}
for (i = 1; i <= MAXWORDLEN; ++i)
{
printf("|%2d|:", i);
for (j = 0; j < lens[i]; ++j)
{
putchar('*');
}
putchar('\n');
}
return 0;
}
// Here's the output of the program when given its own source as input:
/*
| 1|:***************************************************
| 2|:****************************************
| 3|:******************
| 4|:********
| 5|:**********
| 6|:****
| 7|:******
| 8|:**
| 9|:***
|10|:**
|11|:****
|12|:*
|13|:*
|14|:*
|15|:*
|16|:
*/