下面程序的功能是( )。
#include <iostream>
#include <string>
using namespace std;
int main ()
int i=1, n=0;
char s[80],*p;
p=s;
strcpy(p,"It is a book..");
for (; *p !=’ \0’ ;p++)
if(*p==’’)
i=0;
else if (i==0)
n++; i=1;
cout<<"n=" <<n<<end1;
return 0;
A.统计字符串中的单词个数
B.统计字符串中的空格个数
C.统计字符串中的字母个数
D.统计字符串中的全部字符个数
参考答案:B
解析: 本题通过for循环对字符串进行扫描,遇到’\0’结束扫描。程序首先将i的值置为1,n的值置为0。在for循环中,通过if语句判断*p指向的字符是否为空格,如果是空格则将i的值置为0,而在else if语句,如果i的值为0,则n++,然后将i的值重新置为1。如此反复,最后统计出字符串中的空格个数。