#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
int str_chr(char* s, int c)
{
int sum=0;
for (int i = 0; i < strlen(s); i++)
{
if (s[i] == c)
{
sum += 1;
}
}
return sum;
}
int main(void)
{
char s[100];
char a;
printf("문자열을 입력하시오: ");
gets_s(s);
printf("개수를 셀 문자를 입력하시오: ");
scanf("&c", a);
printf("%c의 개수: %d", a, str_chr(s, a));
return 0;
}
여기서 a가 초기화 되지 않는 지역변수라고 오류가 떠서 char a = ' '; 으로 하면 결과가 이상하게 도출됩니다..