두 개의 숫자를 취하고 값에 따라 반환 값이 둘다 홀수이고, 둘 다 짝수이거나 A가 홀수이고 B가 짝수 인 프로그램을 작성하려고합니다.여러 개의 숫자로 C에서 홀수/짝수를 반환합니다.
하나의 변수를 검사하는 프로그램을 만들었지 만 두 번째 변수를 추가하면 예상치 못한 출력이 나오고 코드를 정렬 할 수없는 것처럼 보입니다. 올바른 출력. 나는 그것이 if/else 문장의 배열에 문제가 있다고 생각합니다. 32767되지 5 :
는#include <stdio.h>
int main()
{
int numA, numB;
printf("Please enter variables:");
scanf("%d, %d", &numA, &numB);
if (numA % 2) {
printf("Variable A:%d is odd \n",numA);
}
else{
printf("Variable A:%d is even \n", numA);
}
if (numB % 2) {
printf("Variable B:%d is odd \n",numB);
}
else{
printf("Variable B:%d is even \n", numB);
}
return 0;
}
내가 얻을 출력은
Please enter variables:4 5
Variable A:4 is even
Variable B:32767 is odd
왜 변수 B 이하?
많은 도움에 감사드립니다. 이 문제를 해결할 수 있다면 나머지 부분을 스스로 찾아 낼 수 있기를 바랍니다. 그래서 첫 번째 숫자는 scanf
에 의해 변환되고 두 번째는 초기화되지 않은 한,
이러한 변수를 사용하기 전에'scanf'의 반환 값을 확인하십시오. – DCoder