用C++输入一个字符串,统计字符串中小写字母的个数

大一课本知识点不会啊

急求啊

啊啊

  1. 小写字母包括a到z,一共26个英文字母。

  2. 区分字符串中的字符属于特殊符号,或者是小写字母和大写字母,其本质是每个字符在Unicode编码中对应一个数字。a对应数字编码为97,z对应数字的编码为122。

  3. 判断一个字符char1为小写字母的条件为'a'<=char1<='z',因为字母对应一个数值,所以也可以用97<=Asc(char1)<=122。

  4. 统计字符串中的所有小写字母的个数,只需要按顺序逐个取出字符串的字符,一一进行比较。如果符号上述条件则为小写字母,用一个变量i记录小写字母的个数。i的初始值为0,找到一个小写字母i就加上一,直到对字符串的最后一个字母也完成判断。最后再在屏幕上输出i。

  5. 具体的代码为:

    i=0;                             ‘开始小写字母的个数记为0个

    char *p=str1;                 '指针p在字符串str1的开始位置

    while(*p!=\0)                 '判断指针p是否到了字符串str1的结束位置

    {

        if(*p>='a'&&*p<='z')  ‘判断字符是否小写字母

           i++;      ’如果是小写字母,i加上1,代表一个小写字母

           p++;             ‘无论上一个数是否是小写字母,指针都要移动到一个字符

    }

                             

    return i;                              '函数最后返回字符串中小写字母的个数

#include <bits/stdc++.h>
using namespace std;
#include<stdio.h>
int main()
{
    int i,sum=0,l;
    char s[100];
    cin>>s;
    l=strlen(s);
    for(i=0;i<l;i++){
        if(s[i]>='a'&&s[i]<='z'){
            sum++;
        }
    }
    cout<<sum;
    return 0;
}

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps: 问答会员年卡【8折】购 ,限时加赠IT实体书,即可 享受50次 有问必答服务,了解详情>>>https://t.csdnimg.cn/RW5m

char s[100];
int ans; // 结果
scanf("%s", s);
int len = strlen(s); // 数组长度
for (int i = 0; i < len; i++) // 遍历数组
{
  if (s[i] >= 'a' && s[i] <= 'z') ans++; // 判断小写字母
}
return 0;

重在思路

#include <iostream>
#include <ctring>
using namespace std;
int main()
{
    char ch[102];
    int cnt = 0;
    cin >> ch;
    for(int i = 0;i < strlen(ch);i ++)
    {
          if(s[i] >= 'a' && s[i] <= 'z')
              cnt ++;
    }
    cout << cnt;
    return 0;
}