求助一道关于c语言的题

求直到两个E出现之前的字符个数,我写了下面的代码可是输出结果总是d,是哪里错了?
#include
int main()
{
int count;
char ch;
count=0
scanf("c%",ch);
while(ch[count]!='E'&&ch[count+]!='E')
{
if(ch!='E')
count++
}
printf("total%d"\n,count);
}

 char ch;//应该定义为数组
 char ch[beffuesize];
 scanf("c%",ch);//有误
 scanf("%s",ch);

细心点吧,学会调试。

 int main()
{
int count;
#ifndef MAXSIZE
#define MAXSIZE 64
#endif
char ch[MAXSIZE];
count=0
scanf("c%",ch);//----------->scanf("%s" , ch);
while(ch[count]!='E'&&ch[count+]!='E')//------------>while ((ch[count] != 'E' && ch[count + 1] != 'E') && count < MAXSIZE)
{
if(ch!='E')//-------------------------->if (ch[count] != 'E')
count++;
}
printf("total%d"\n,count);
}

代码如下,测试通过(考虑了没有EE或者只输入EE两个字符时的情况)

 #include<stdio.h>

int main()
{
    int count = 0;
    char ch[256];
    printf("Please input:\n");
    scanf("%s", &ch);

    int i = 0;
    bool flag = false;//标志位
    while (ch[i] != '\0')
    {
        count++;
        i++;
        if (ch[i] == 'E' && ch[i+1] == 'E')
        {
            flag = true;//满足题目要求的情况,跳出循环
            break;
        }
    }
    if (!flag || (ch[0] == 'E' && ch[i + 1] == 'E'))//当输入没有EE或者输入只有EE两个字符时,count应该为0
    {
        count = 0;
    }
    printf("Total count is:%d\n",count);
    return 0;
}

图片说明