포인터문제...
바르고
2023.04.01
어딜가나...포인터 머리아프군요 ..... 공부중인데 너무 안풀려서 질문드립니다.10개의 정수를 입력받아서.
짝수, 홀수를 구분해서 출력하는것인데요
예를들면
10개의 정수를 입력
?: 1
?: 2
?: 3
?: 4
..................
?: 10
이런식으로 입력하고
짝수:2,4,6,8,10,
홀수:1,3,5,7,9,
이런식으로 출력해요..
질문 내용 : #includestdio.h
void odd(int arr[]);
int main(void){
int i=0,k;
int arr[10];
//배열입력받기.
printf(총 10개의 숫자 입력\n);
for(k=0;k10;k++){
printf(?: );
scanf(%d,&arr[i]);
i++;
}
odd(arr);
}
void odd(int arr[]){
int l=0,m=0;
printf(홀수 : );
for(m=0;m10;m++){
if(*(arr+l)==1){printf(%d, ,*(arr+l));}//문제점은 여긴데요... 분명..포인터의 값이. 1일때. 그주소의 값을 출력하죠.
else if(*(arr+l)%2==1){printf(%d, ,*(arr+l));}
//1일때는 나눠도 안나오니. 2일때부터 시작인데. 출력해보니까.1, 이러고끝이네요.......
//뭐가잘못된건지;; 좀 알려주셨으면합니다.
else {continue;}
l++;}
}