分享一个大牛的人工智能教程。零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请点击人工智能教程
/*
* Write a program that wraps very long lines of input into two or more shorter lines.
*
* WrapLine.c - by FreeMan
*/
#include <stdio.h>
#define MAXLINE 1024 /* Max input line size */
char line[MAXLINE]; /* Current input line */
int GetLine(void);
int main()
{
int i, len;
int location, spaceholder;
const int WRAPLENGTH = 80; /* The max length of a line */
while ((len = GetLine()) > 0)
{
if (len < WRAPLENGTH)
{
}
else /* If this is an extra long line then we loop through it replacing
a space nearest to the wrap area with a new line*/
{
i = 0;
location = 0;
while (i < len)
{
if (line[i] == ' ')
{
spaceholder = i;
}
if (location == WRAPLENGTH)
{
line[spaceholder] = '\n';
location = 0;
}
location++;
i++;
}
}
printf("%s", line);
}
return 0;
}
/* GetLine: Specialized version */
int GetLine(void)
{
int c, i;
extern char line[];
for (i = 0; i < MAXLINE - 1 && (c = getchar()) != EOF && c != '\n'; ++i)
{
line[i] = c;
}
if (c == '\n')
{
line[i] = c;
++i;
}
line[i] = '\0';
return i;
}