欢迎访问服务器技术网-www.fuwuqijishu.com

这几条C语言的命令是什么意思啊?大家帮忙!

软件 fuwuqijishu 2年前 (2022-10-01) 9次浏览 0个评论 扫描二维码

关于统计输入文本的单词个数,单词之间要用空格符,换行符,跳格符隔开
#include “stdio.h”
#define IN 1
#define OUT 0
main()
{ int n;
n=countword();
printf(“n=%d\n”,n);
}
countword()
{ int c, nw, st ate;
state=OUT;
nw=0;
while( (c=getcher()0!=EOF )
{ if(c==’ ‘或c==’\n’或c==’\t’ state=OUT;
else if(state==OUT)
{ state IN;
nw++;
}
}
return nw;
}
函数countword那段特别是while语句里的那段是什么意思啊?能不能帮我一句句讲一下?万分感激,兄弟!
还有“或”那两竖怎么打啊?找不到。。。的问题

countword()
{ int c, nw, st ate;
state=OUT;
nw=0;
while( (c=getcher()0!=EOF ) // 这里有个错,应该是 (c=getchar()), c被赋值为下个字符,整个while意思是如果下个字符不是EOF(end of file)即中止符, 那么while就一直运行。
{ if(c==’ ‘或c==’\n’或c==’\t’ state=OUT; //如果c的值是空格,新行符(new line), 或是tab, state被赋值为OUT
else if(state==OUT) //如果state是OUT
{ state IN; //又错了,应该是state=IN,
nw++; //nw=nw+1;
}
}
return nw; //返回nw的值
}
整个while的意思是,比如遇到 “i am here!” 这句
开始时state=out;nw=0;以下是c,s,nw的变化
time —————————————————–>
c i ‘ ‘ a m ‘ ‘ h e r e ! #
s out in out in in out in 。
。。。。
nw 0 1 1 2 2 2 3 。。。。。
关于或者的写法 就是后退键左边的那个,标有 | \ , 要按shift+这个键才行。

喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

Warning: error_log(/www/wwwroot/fuwiqijishu/wp-content/plugins/spider-analyser/#log/log-2621.txt): failed to open stream: No such file or directory in /www/wwwroot/fuwiqijishu/wp-content/plugins/spider-analyser/spider.class.php on line 2900