c语言程序改错

程序D19.c的功能是将inBuf中字符串拆分成一个个的单词。程序说明:(1)单词之间的分隔符由串divChar,程序中定义为“;?!,.>/\”。(2)函数getStr... 程序D19.c的功能是将inBuf中字符串拆分成一个个的单词。
  程序说明:
    (1)单词之间的分隔符由串divChar,程序中定义为“;?!,.>/\”。
  (2)函数getStrFromBuf的功能是从Buf的开始处寻找第一个单词,将找到的单词作为一个字符串复制到Str处,divStr指明单词间的分隔符。GetStrFromBuf的返回值指向已找到单词的下一个字符。
    (3)函数charInStr的功能是判断字符t是否出现在串Str中。
    (4)主程序的功能是将inBuf中的所有单词在屏幕上显示出来。

#include<stdio.h>

#define Yes 1
#define No 0

char *getStrFromBuf(char *Buf, char *Str, char *divStr);
int charInStr(char *Str, char t);

int main(void)
{
char inBuf[100] = ">how old are/ you?", *point, oneWord[20];
char divChar[] = " ;?!,.>/\\";

point = inBuf;
while (*point)
{
/*********Found************/
getStrFromBuf(point, oneWord, divChar);
if (*oneWord)
{
puts(oneWord);
}
}

return 0;
}

int charInStr(char *Str, char t)
{
for (; *Str; Str++)
{
/*********Found************/
if (*Str == *t)
{
/*********Found************/
return No;
}
}
/*********Found************/
return Yes;
}

char *getStrFromBuf(char *Buf, char *Str, char *divStr)
{
for (; *Buf; Buf++)
{
if (charInStr(divStr, *Buf) == No)
{
break;
}

}

for (; *Buf; Buf++)
{
if (charInStr(divStr, *Buf) == Yes)
{
break;
}
/*********Found************/
Str = *Buf;
Str++;
}
/*********Found************/
*Str = '0';

/*********Found************/
return ;
}
展开
 我来答
匿名用户
推荐于2016-04-08
展开全部
//程序D19.c的功能是将inBuf中字符串拆分成一个个的单词。
//程序说明:
//(1)单词之间的分隔腊唯笑符由串divChar,程序中定义为“; ? !, .> / \”。
//(2)函数getStrFromBuf的功能是从Buf的开始处寻找第一个单词,将找到的单词作为一个字符串复制到Str处,divStr指明单词间的分隔符。GetStrFromBuf的返回值指向已找到单词的下一个字符。
//(3)函数charInStr的功能是判断字符t是否出现在串Str中。
//(4)主程序的功能是将inBuf中的所有单词在屏幕上显示出来。

#include<stdio.h>

#define Yes 1
#define No  0

char *getStrFromBuf(char *Buf, char *Str, char *divStr);
int charInStr(char *Str, char t);

int main(void)
{
char inBuf[100] = ">how old are/ you?", *point, oneWord[20];
char divChar[] = " ;?!,.>/\\";

point = inBuf;
while 山搜(*point)
{
/*********Found************/
point=getStrFromBuf(point, oneWord, divChar);
if (*oneWord)
{
puts(oneWord);
}
}

return 0;
}

int charInStr(char *Str, char t)
{
for (; *Str; Str++)
{
/*********Found************/
if (*Str == t)
{
/*********Found************/
return Yes;
}
}
/*********Found************/
return No;
}

char *getStrFromBuf(char *Buf, char *Str,const char *divStr)
{

for (; *Buf; Buf++)
{
if (charInStr(divStr, *Buf) == No)
{
break;
}

}

for (; *Buf; Buf++)
{
if (charInStr(divStr, *Buf) == Yes)
{
break;
}
/*********Found************/
*Str = *Buf;
Str++;
}
/*********Found************/
*Str = '\0';

/*********Found************/
return 轮含++Buf;
}
匿名用户
2014-12-14
展开全部
main里的第一个赋值就错了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式