一道c语言问题(回答满意的话另外再加分)
#include<stdio.h>#defineIN1#defineOUT0voidmain(){charstring[80],c;inti,num=0,word=OUT...
#include <stdio.h>
#define IN 1
#define OUT 0
void main ( )
{
char string[80], c;
int i, num=0, word = OUT;
gets (string);
for (i = 0; (c = string[i]) != '\0'; i++)
if (c == ' ') //判断c是否为空格
word = OUT;
else
if (word == OUT)
{
word = IN;
num++;
}
printf ("There are %d words in the line.\n", num);
}
加上下面这几句有什么作用,为什么?
word = OUT;
else
if (word == OUT)
{
word = IN; 展开
#define IN 1
#define OUT 0
void main ( )
{
char string[80], c;
int i, num=0, word = OUT;
gets (string);
for (i = 0; (c = string[i]) != '\0'; i++)
if (c == ' ') //判断c是否为空格
word = OUT;
else
if (word == OUT)
{
word = IN;
num++;
}
printf ("There are %d words in the line.\n", num);
}
加上下面这几句有什么作用,为什么?
word = OUT;
else
if (word == OUT)
{
word = IN; 展开
4个回答
展开全部
目的:统计单词数目
if (c == ' ')
word = OUT; //空格表示单词结束
else
if (word == OUT)
{
word = IN;//非空格表示单词开始
num++;
}
比如
string[80],="hello word":
开始 word = OUT
接着 string[0]时 word = IN 单词开始 num==1
接着 string[1-4]时 word = IN (if-else派段都为假)
接着 string[5]时 word = OUT
接着 string[6]时 word = IN 单词开始 num==2
接着 string[7-9]时 word = IN (if-else派段都为假)
最后 string[10]时 退出for循环
共两个单词
if (c == ' ')
word = OUT; //空格表示单词结束
else
if (word == OUT)
{
word = IN;//非空格表示单词开始
num++;
}
比如
string[80],="hello word":
开始 word = OUT
接着 string[0]时 word = IN 单词开始 num==1
接着 string[1-4]时 word = IN (if-else派段都为假)
接着 string[5]时 word = OUT
接着 string[6]时 word = IN 单词开始 num==2
接着 string[7-9]时 word = IN (if-else派段都为假)
最后 string[10]时 退出for循环
共两个单词
展开全部
word = OUT;//如果为空格标记为OUT
else
if (word == OUT)//如果前一个为空格,这一个不是空格,单词数加1,同时标记还原
{
word = IN;
else
if (word == OUT)//如果前一个为空格,这一个不是空格,单词数加1,同时标记还原
{
word = IN;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是这样的,开头定义了IN=1,OUT=0
这个WORD相当于一个判断器,当c是空格的时候它被赋值0,循环。如果不是空格,则再判断前一项是不是空格,是的话计数器+1.简单来说这是一个计算单词数的程序。
这几句这么翻译:把OUT的值赋值给WORD,判断若WORD=OUT,则给WORD赋值IN。
这个WORD相当于一个判断器,当c是空格的时候它被赋值0,循环。如果不是空格,则再判断前一项是不是空格,是的话计数器+1.简单来说这是一个计算单词数的程序。
这几句这么翻译:把OUT的值赋值给WORD,判断若WORD=OUT,则给WORD赋值IN。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |