c语言(输出字母个数)

问题遇到的现象和发生背景

输入一个字符串,数出其中的字母的个数.
一个字符串,不包含空格(长度小于100)
字符串中的字母的个数

用代码块功能插入代码,请勿粘贴截图
我想要达到的结果
#include
#include
int main(void)
{
    char a[100];
    int l = 0, i = 0, len;
    gets_s(a);
    len = strlen(a);
    for (int j = 0; j <= len; j++)
    {

        if ((a[i] >= 'a' && a[i] <= 'z') || (a[i] >= 'A' && a[i] <= 'Z'))
            l++;
    }
    printf("%d", l);
    return 0;

}

img

循环里面,你的循环是j;

a[i]换成a[j];


#include
#include
int main(void)
{
    char a[100];
    int l = 0, i = 0, len;
    gets_s(a);
    len = strlen(a);
    for (int j = 0; j <= len; j++)
    {
        if ((a[j] >= 'a' && a[j] <= 'z') || (a[j] >= 'A' && a[j] <= 'Z'))
            l++;
    }
    printf("%d", l);
    return 0;
}



img

//数组下标错了
//此处用了scanf替代get_s函数


#include<stdio.h>
#include<string.h>

int main(void)
{
    char a[100];
    int l = 0, i = 0, len;
    scanf("%100[^\n]s", a);
    len = strlen(a);
    for (int j = 0; j < len; j++)
    {
        if ((a[j] >= 'a' && a[j] <= 'z') || (a[j] >= 'A' && a[j] <= 'Z'))
            l++;
    }
    printf("%d", l);
    return 0;
}