나는 C 언어를 처음 접했고, 지금은 마스터에게 기본을 시도하고 scanf에서 배열로 데이터를 읽는 데 문제가있다.C : scanf from array
는 현재 코드는 다음과 같습니다
int main()
{
int array[11];
printf("Write down your ID number!\n");
scanf("%d", array);
if (array[0]=1)
{
printf("\nThis person is a male.");
}
else if (array[0]=2)
{
printf("\nThis person is a female.");
}
return 0;
}
당신이 볼 수 있듯이,이 프로그램의 목표는 ID를 요청 해, 지정된 사람이 남성인지 첫 번째 숫자에서 결정하는 것입니다 (1) 또는 여성 (2). 그러나 배열이 제대로 채워지지 않았기 때문에 제대로 작동하지 않는 것 같습니다 (scanf (배열) 바로 다음에 임의의 숫자가 표시됨). 이 프로그램을 실행하면 어떤 번호를 입력했는지 상관없이 그 사람이 남성이라는 결과가 나옵니다.
아주 드문 것처럼 보일 수도 있지만 문제를 파악할 수 없습니다.
왜 u는 단지 U는 ID가 정수 –
을 사용할 수 있으며, 아이디를 저장하는 배열을 복용 아마 더 길 것이고 이것은 프로그램의 일부일뿐입니다. 나는 이드의 첫 자릿수가 단순히 성을 보여줄 것이라고 생각한다. –
정말 컴파일러 경고를 활성화해야합니다. – Lundin