输入一行字符,统计其中有多少个单词。单词之间用一个或者多个空格隔开

知识点:1、字符串的输入和输出:输入用gets(str),输出用puts(str)

gets(str),功能:从键盘读入一个字符串到str中,并自动在末尾加字符串结束标志“\0”。

puts(str),功能:将字符数组str中包含的字符串或str所代表的字符串输出,同时将“\0”转换成换行符。

2、运用字符串长度函数strlen(需加上#include<string.h>)

功能:求字符串长度(不包括‘\0’),由函数值返回。

注意点:字符是由‘\0’结尾。

思维1:

关键步骤:判断单词数,像How are you 这是3个单词,规律:在a前有空格,而a不是空格,单词数加1,注意:正常情况下第一个单词是没有空格的。

代码如下:

for(i=0;str[i]!='\0';i++)
 if(str[i]==' '&&str[i+1]!=' ')
    count++;

整体代码:

#include<stdio.h>
#include<string.h>
void main()
{
  int i,j,count=1;//从1开始算,第一个单词算一个
  char str[100];
  printf("请输入一串字符:");
  gets(str);
  j=strlen(str);
  for(i=0;str[i]!='\0';i++)
  {
     if(str[i]==' '&&str[i+1]!=' ')
       count++;
  }
  printf("这串字符有%d个单词",count);
}

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
乘风的头像乘风管理团队
上一篇 2023年12月27日
下一篇 2023年12月27日

相关推荐