분류 전체보기105 [열혈 C 프로그래밍] 도전! 프로그래밍2 - 도전1 도전 1 길이가 10인 배열을 선언하고 총 10개의 정수를 입력 받아서, 홀수와 짝수를 구분 지어 출력하는 프로그램을 작성해 보자. 일단 홀수부터 출력하고 나서 짝수를 출력하도록 하자. 단, 10개의 정수는 main 함수 내에서 입력 받도록 하고, 배열 내에 존재하는 홀수만 출력하는 함수와 배열 내에 존재하는 짝수만 출력하는 함수를 각각 정의해서 이 두 함수를 호출하는 방식으로 프로그램을 완성하자. #include void show_odd_num(int * arr, int size); void show_even_num(int * arr, int size); int main(void) { int arr[10]; int i; printf("총 10개의 숫자 입력\n"); for(i=0; i 2022. 12. 29. [열혈 C 프로그래밍] '형(Type)'이 존재하지 않는 void 포인터 다음과 같이 선언되는 포인터 변수를 가리켜 'void형 포인터 변수'라 한다. void * ptr; void형 포인터 변수는 무엇이든 담을 수 있는 바구니에 비유할 수 있다. void형 포인터 변수에는 어떠한 변수의 주소 값이든 담을 수 있다. 하다못해 함수의 주소 값도 담을 수 있다. #include void SoSimpleFunc(void) { printf("I'm so simple"); } int main(void) { int num=20; void * ptr; ptr=# // 변수 num의 주소 값 저장 printf("%p \n", ptr); ptr=SoSimpleFunc; // 함수 SoSimpleFunc의 주소 값 저장 printf("%p \n", ptr); return 0; } 하지만.. 2022. 12. 28. [열혈 C 프로그래밍] 적절한 함수 포인터 변수의 선언 포인터 변수에는 반환형 정보와 매개변수 선언의 정보가 모두 표현되어 있어야 한다. #include void SimpleAdder(int n1, int n2) { printf("%d + %d = %d \n", n1, n2, n1 + n2); } void ShowString(char * str) { printf("%s \n", str); } int main(void) { char * str = "Function Pointer" int num1=10, num2=20; void (*fptr1)(int, int) = SimpleAdder; void (*fptr2)(char *) = ShowString; /* 함수 포인터 변수에 의한 호출 */ fptr1(num1, num2); fptr2(str); return 0.. 2022. 12. 28. 두 가지 이름 21 마리아가 아들을 낳을 것이니 그 이름을 '예수'라 하여라. 예수가 그의 백성을 그들의 죄로부터 구원할 것이다." 22 이 모든 일이 일어나게 된 것은 주께서 예언자를 통해 말씀하신 것을 성취하기 위함이었습니다. 2022. 12. 25. 이전 1 2 3 4 5 6 ··· 27 다음