Я написал программу C для подсчета числа вхождений введенного символа. Когда я выполняю, я могу только ввести имя файла. Перед тем, как вводить символ для подсчета, выполняется следующий оператор. Результат, который я получаю, показан ниже.Символ не принимается
Enter the file name test.txt Enter the character to be counted File test.txt has 0 instances of
Вот мой код
#include<stdio.h>
#include<stdlib.h>
int main()
{
FILE *fp1;
int cnt=0;
char a,ch,name[20];
printf("Enter the file name\n");
scanf("%s",name);
//fp1=fopen(name,"r");
printf("Enter the character to be counted\n");
scanf("%c",&ch);
fp1=fopen(name,"r");
while(1)
{
a=fgetc(fp1);
if (a==ch)
cnt=cnt+1;
if(a==EOF)
break;
}
fclose(fp1);
printf("File %s has %d instances of %c",name,cnt,ch);
return 0;
}
Как решить эту проблему?
'scanf ("% c ", &ch);' -> 'scanf ("% c ", &ch);', учитывать пространство –