본문 바로가기

728x90

Programming Language/C

(5)
[C언어] 월별로 일수 계산하는 프로그램 출처 : 혼자공부하는 C언어 : 혼자 공부하는 C 언어 (hanbit.co.kr) 일년은 총 12개월이죠. 이번 시간에는 기본적인 배열과 포인터를 이용해서 1월부터 12월까지 일 수를 계산하는 프로그램을 만들어 보았습니다. (1월은 31, 2월은 28일 ...)의 형식입니다. print_month 함수를 따로 선언해줍니다. 0~11까지 for문을 반복하면서 월을 출력해주고, 4칸마다 하나씩 띄어주는 것입니다. 1,2,3,4 분기를 표현하려 한 것입니다. #include // 월별로 날짜 구하기 프로그램 void print_month(int *mp) { int i; for (i = 0; i < 12; i++) { printf("\n%4d월", i+1); printf("%4d", mp[i]); // 배열의 ..
[C언어] 혼공C 예제 연습_포인터와 배열에 대해서 이번 시간에도 C언어에 대한 학습을 진행합니다. C언어에서 다양한 자료의 형태 중 Pointer와 배열의 사용에 대해서 알아보겠습니다. 배열은 int array[10]; 과 같이 변수를 선언하는 것과 똑같이 크기와 함께 선언합니다. 포인터의 경우 int *point처럼 변수 앞에 * 을 붙이면서 선언합니다. 이때 배열은 주소처럼 포인터에도 바로 저장할 수 있습니다. 그렇다면 포인터로 연산식이나 대괄호를 써서 배열의 요소를 정의할 수도 있습니다. #include int main(void) { int ary[3];// 배열 선언 int* pa = ary; // 포인터에 배열명 저장 int i;// 반복 제어 변수 *pa = 10; // 첫 번째 배열 요소에 10 대입 *(pa + 1) = 20; // 두 번..
[C언어] 혼공C 예제 연습_1부터 n까지 자동으로 합계내는 알고리즘 이번 시간에는 자동으로 숫자 1부터 특정 상수까지 모두 합계를 내는 알고리즘을 작성해보았습니다. 출처 : 혼자공부하는 C언어 : 혼자 공부하는 C 언어 (hanbit.co.kr) 함수 선언을 통해 for문을 이용하여 반복해서 더하는 형태를 만들어줍니다. 변수 b와 k를 선언하고, for문을 진행합니다. k는 합계를 저장할 변수, b는 하나씩 증가시키는데 사용합니다. #include int sum(int a); // 함수 선언 int main(void) { sum(10);// 1부터 10까지의 합 출력 sum(100);// 1부터 100까지의 합 출력 sum(1000);// 1부터 1000까지의 합 출력 sum(2); // Debug return 0; } int sum(int a) // 함수 원형 { in..
[C언어] 혼공C 예제 연습_반복문을 활용한 구구단, 교차되는 별 찍기 코드 혼공C에 대한 C언어 자습 파일입니다. 출처 : 혼자 공부하는 C 언어 (hanbit.co.kr) 이번 시간에는 간단하게, 반복문과 중첩된 for문을 사용해서 만든 c파일을 구현해 보겠습니다. 1) for문만 사용해서 구구단을 출력하는 프로그램 목표는 2단, 3단, 4단, ... 9단까지 차례로 곱셈을 표현하는 구구단 표를 만드는 것입니다. 제어 변수는 교재의 경우, 2가지만 사용했지만 이번 코드의 경우, i와 j를 곱한 변수를 따로 저장하기 위해 k라는 변수를 다시 선언해줍니다. #include int main(void) { int i, j, k; for (i = 2; i < 10; i++) // i가 2에서 9까지 변하면서 8번 반복함 { for (j = 1; j < 10; j++) { k = j *..
[C언어] 혼공C 예제 연습_Switch문을 활용한 rank별 상금 결정하는 프로그램 C언어 학습을 위한 자습용 코드와 설명을 작성하고 있습니다. 교재 : 혼자 공부하는 C 언어 (hanbit.co.kr) Switch~ Case 문에 관하여 switch문은 if문과 다르게 case를 따로 두어, 다양한 경우를 표현할 수 있습니다. 랭킹(rank)을 입력받아 변수에 저장, rank별 상금(m)을 구하는 코드를 진행해 보았습니다. case를 통해 여러 개의 경우의 수를 골라서, 하나의 상수만을 반환할 수 있습니다. Visual studio를 통해 프로젝트를 생성하여, 소스 파일에 아래의 코드와 같이 C 파일을 제작하여 표현했습니다. #include int main(void) { int rank, m = 0; printf("랭크를 입력하라(1~5) : "); scanf("%d", &rank);..

728x90