반응형
Call by Refelence 형식을 사용한 함수.
#include <stdio.h> void ball(double r, double* c_area, double* s_area, double* volume); int main() { double radius, c_area, s_area, volume; printf("반지름을 입력해주세요 : "); scanf_s("%lf", &radius); ball(radius, &c_area, &s_area, &volume); printf("원의 면적 = %.2lf \n", c_area); printf("구의 면적 = %.6lf \n", s_area); printf("구의 부피 = %.6lf \n", volume); } void ball(double r, double* c_area, double* s_area, double* volume) { const double PI = 3.141592; *c_area = PI * r*r; *s_area = 4.0 * PI*r*r; *volume = (4.0 / 3.0) * PI * r*r*r; //소수점 연산을 할 때는 정수에 .0을 꼭 붙입시다. }
간단한 배열 정렬 프로그램
#include <stdio.h> void ordering(int arr[], int arr_size); void show_arr(int arr[], int arr_size); int main() { int arr[] = {3,4,5,2,6,1,15,64}; printf("정렬 전 배열 \n"); show_arr(arr, sizeof(arr) / sizeof(int)); ordering(arr, sizeof(arr) / sizeof(int)); printf("정렬 후 배열 \n"); show_arr(arr, sizeof(arr) / sizeof(int)); } // 간단한 교환 정렬 함수 void ordering(int arr[], int arr_size) { for (int i = 0; i < arr_size - 1; i++) { for (int k = i + 1; k < arr_size; k++) { if (arr[i] > arr[k]) { arr[i] ^= arr[k]; arr[k] ^= arr[i]; arr[i] ^= arr[k]; } } } } //배열 출력 함수 void show_arr(int arr[], int arr_size) { for (int i = 0; i < arr_size; i++) { printf("%d ", arr[i]); } printf("\n"); }
반응형