A-A+

下述函数统计—个字符串中的单词个数 单词是指处在空格之间的字符序列 请填空。 int wor

2022-08-12 19:03:31 问答库 阅读 197 次

问题详情

下述函数统计—个字符串中的单词个数,单词是指处在空格之间的字符序列,请填空。 int word(char *s) { int num=0,flag=0; while(*s) { if(【 】=) flag=0; else if(【 】){flag=1;num++} } return【 】;}


请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:*s++flag=0 或 *(s-1)=""num
在统计字符串单词个数的算法中,本题的flag是为了记录—个单词是否结束。第18空应填*s++;如果某个字符不是空格,则必须判断它是否是单词,如是,则使得flag的标志为1,num的值加1。本题判断方法是:先判断s所指向的字符是否为空格,如果是则使得flag=0,否则判断前—个字符是否是空格,如果是则说明这个字符是—个单词的开始,将flag标志为1,num的值加1,如果不是,则不必记录。故第19空应填flag=0或*(s-1)="";最后—个空格需填写的是返回的单词的个数,即num。

考点:单词,空格