Я попытался выполнить следующий простой код в Ubuntu 15.10, но код ведет себя странно, чем ожидалось.
#include<stdio.h>
int main(){
int n,i=0;
char val;
char a[20];
printf("\nEnter the value : ");
scanf("%s",a);
printf("\nEnter the value to be searched : ");
scanf("%c",&val);
int count=0;
for(i=0;i<20;i++){
if(a[i]==val){
printf("\n%c found at location %d",val,i);
count++;
}
}
printf("\nTotal occurance of %c is %d",val,count);
return 0;
}
output:
--------------------------
Enter the value : 12345678
Enter the value to be searched :
Total occurance of is 0
Второй scanf для получения искомого значения, похоже, не работает. Остальная часть кода выполняется после первого сканирования без ввода во второй раз.