小白菜鸡提问!不知道这个for循环为啥跳不出来😭

img


下面是我的代码
#include
int main( )
{
int i,n=0,j;
char a[20],x;
while((a[20]=getchar())!='\n')
n++;
scanf("%c",&x);
printf("特定字符是%c\n",x);
for(i=0;i
{
if(a[i]==x)
break;
}
printf("%d",i);
}


a[20]=getchar();//20应该改成n

第6行的while里面是 a[n] 不是 a[20]

修改如下,供参考:

#include <stdio.h>
int main()
{
    int i, n = 0, j;
    char a[20], x;
    while ((a[n] = getchar()) != '\n')  //(a[20] = getchar()) != '\n'
        n++;
    scanf(" %c", &x);
    printf("特定字符是%c\n", x);
    for (i = 0; i < n; i++)
    {
        if (a[i] == x)
            break;
    }
    printf("%d", i);  
    return 0;
}