본문 바로가기

지난 학기들의 기록/C 기초21

[C실습] 함수예제 - 높은 자릿수, 낮은자릿수부터 변환하기 이번 포스트에서는 함수 실습 예제를 다룹니다. 문제는 양의 정수를 입력받아서 두 자리수씩 묶어서 아스키코드와 대조하여 문자로 반환하는것입니다. 먼저 문제에 대한 이해를 하고 그 내용을 바탕으로 코드를 작성하겠습니다. N을 입력받았을때 자릿수를 구해야하고, 자릿수 개수가 홀수인지 짝수인지에 따라 가장 높은 두 자리수출력함수 , 낮은 두 자리수 출력함수를 호출해야합니다. 그리고 그 함수들은 출력숫자를 제외한 나머지 숫자를 반환합니다. 예시를 들어보면 12345의 경우 진행과정은 자릿수판별 > 자릿수 5개 (홀수)> 높은 두자릿수 출력함수 실행, 남은 숫자 반환 (반복) > 종료 EX1) 12345 > convert_top 실행 > 12 출력 345 반환 > 34 출력 5 반환 > 5출력 0반환 >종료 EX2.. 2020. 5. 31.
[C실습] 배열 예제- 배열의 원소 중복 검사하기 이번 포스트에서 다룰 예제 유형은 배열의 중복된 숫자 검사입니다. 간단한 알고리즘 2가지를 통해 구현해보았습니다. 바로 코드를 참고해주세요. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 #pragma warning(disable:4996) #include /* 문제 5-2 */ int main() { int A[100];//A 원소 값들을 입력받는 배열 선언 int B[100];//B 원소 값들을 입력받는 배열 선언.. 2020. 5. 31.
[C실습] 배열 예제- 홀수와 짝수로 구분해서 정렬하기 #pragma warning(disable:4996) #include /* 문제2 . 10개의 양의 정수를 입력받아서 입력받은 숫자가 홀수면 배열의 앞에서부터, 짝수면 뒤에서부터 채워서 10개의 양의 정수를 재배열하여 출력하시오. */ int main() { int num[10]; int num2[10] = { 0 }; // 정수를 재정렬하여 담을 배열선언 int p = 0, q = 9;// p는 start, q는 end 이게 핵심 아이디어 for (int i=0;i 2020. 5. 31.
[C실습] 배열 유형 분석 2- N개의 정수배열에서 M개의 칸씩 위치옮기기 이번 포스트에서는 배열 실습문제 유형중에 N개의 정수 배열에서 M개의 칸씩 오른쪽 또는 왼쪽으로 위치를 옮겨서 재 정렬한 배열을 출력하는 유형들입니다. 먼저 다뤄볼 것은 다음 문제입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 #pragma warning(disable:4996) #include int main() { int A[20]; int F, R, M; for (int i = 0; i R - M + 1; i--) { int temp = A[i]; A[i] = A[i - 1]; A[i - 1] = temp; } for (int i = 0; i 2020. 5. 31.