有没有大佬,看看这个那不对

#include<stdio.h>
#include<string.h>
int  panduan(char *str  ,char  x);
char  zimu[100];
void  main()
{
    char  zi;
    printf("请输入字母");
    gets(zimu);
    gets(zi);
    panduan(zimu  ,  zi);
        printf("次数  =  %d",  panduan(zimu  ,  zi));
}
int  panduan(char *str  ,  char  x)
{
    int  i  ,  leng  ,  cishu  =  0;
    leng  =  strlen(str);
    for(  i  =  0  ;  i  <  leng  -  1;  i++)
    {
        if(str(i)   ==  x )
        {
            cishu++;
        }

    }
    return  cishu;
}

 

主要是下标用[],不是()

#include<stdio.h>
#include<string.h>
int  panduan(char *str  ,char  x);
char  zimu[100];
void  main()
{
    char  zi;
    printf("请输入一行字符串: ");
    gets(zimu);
    printf("请输入一个字符串: ");
    zi = getchar();
    panduan(zimu  ,  zi);
    printf("次数  =  %d",  panduan(zimu  ,  zi));
}
int  panduan(char *str  ,  char  x)
{
    int  i  ,  leng  ,  cishu  =  0;
    leng  =  strlen(str);
    for(  i  =  0  ;  i  <  leng  -  1;  i++)
    {
        if(str[i]   ==  x )
        {
            cishu++;
        }
    }
    return  cishu;
}


// Output
请输入一行字符串: ABCDEFGASDFHGZAAAABBBCCDD                                                                                                                                       
请输入一个字符串: A                                                                                                                                                               
次数  =  6