#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int compare(const void* p1,const void* p2)
{
    return *(char*)p1-*(char*)p2;
}
int main()
{
    char str[500];
    scanf("%s",str);
    int sz=strlen(str);
    int count=0,j=0;
    char str1[500];
    for(int i=0;i<sz;i++)
    {
        if(str[i]=='\n')
        {
            break;
        }
        if(str[i]<=127&&str[i]>=0)
        {
            str1[j]=str[i];
            j++;
        }
    }
    qsort(str1,j,1,compare);
    char prev=-1;
    for(int i=0;i<j;i++)
    {
        char cur=str1[i];
        if(prev!=cur)
        {
            count++;
        }
        prev=cur;
    }
    printf("%d",count);
}


将满足情况的字符写入字符数组里,利用qsort对其排序,然后直接去重就行!