본문 바로가기

C언어5

C언어 | 콘솔창 출력위치 변경, GotoXY, COORD, SetConsoleCursorPosition, GetStdHandle(STD_OUTPUT_HANDLE), windows.h ✅ 오늘의 문제 : 계단 만들기 어떠한 양수를 입력받은 뒤, 그 양수와 같은 층의 계단을 만들어보세요 GotoXY 함수만을 사용하세요 (코뮤니티 모각코 과정 中 출제되어 푼 문제입니다.) 콘솔창의 출력 위치 변경하기 #include 먼저 헤더 파일을 include 시켜줌! 헤더파일 내에는 "윈도우 개발자들이 필요한 모든 매크로와 함수들"을 포함하고 있음 즉, "콘솔의 위치를 지정할 수 있는 함수"를 포함하고 있다! 그럼 콘솔의 출력 위치를 변경하는 함수를 만들어봅시다! 보통 GotoXY 라는 이름으로 작성하는, 널리 퍼진 함수 형태임 !! Void GotoXY(int x, int y) { COORD Pos; Pos.X = x; Pos.Y = y; SetConsoleCursorPosition(GetStdH.. 2021. 2. 21.
C언어 | 헤더파일 예제, #ifndef, #pragma once ✅ 오늘의 문제 : 사칙연산 사칙연산이 가능한 함수 (더하기, 빼기, 곱하기, 나누기) 가 정의되어 있는 "calc.h" 헤더파일을 만들어서 사용해 보세요 (코뮤니티 모각코 과정 中 출제되어 푼 문제입니다.) 헤더파일이란? 앞서 예제들에서 사용했던 #include 에서 stdio.h도 헤더파일! 왜 사용하나? C언어는 절차지향적 언어임 그렇다보니 함수를 사용할 때 매우 불편... main 함수를 맨 밑으로 내리면 프로그램에 대한 전체적인 구조 파악이 힘듦 선언부만 앞으로 떼어내어 함수가 코드 내 존재한다고 알려줄 수도 있지만 함수의 개수가 많아지게되면...🤦‍♀️ 이런 문제점을 해결하기위해 헤더파일 사용! 헤더파일 = "선언부"들을 모아둔 파일이라고 생각 (예제를 보면서 이해하시길...!) #pragma.. 2021. 2. 19.
C언어 | 문자열 함수, 버퍼, 버퍼 비우기 예제 ✅ 오늘의 문제 : 문자열 길이 비교 후 출력하기 두 개의 문자열을 입력 받은 후, 두 문자열 중 긴 문자열의 길이를 출력하세요. 두 문자열의 길이가 같으면, 두 문자열을 하나의 문자열로 합쳐서 출력하세요. 공백도 문자열의 길이에 포함해주세요. (코뮤니티 모각코 과정 中 출제되어 푼 문제입니다.) 입력예시 hello world how are you? 12 문자열 함수 문자열 함수는 헤더 파일을 포함시켜 사용!but 헤더 파일에 내장된 문자열 함수들도 있음 헤더파일 내장 문자열 함수 ✔gets_s(버퍼, 버퍼크기) : 성공하면 입력된 문자열을 반환, 실패하면 NULL을 반환 엔터 키를 누르면 입력이 끝나며 개행 문자 \n은 저장되지 않음. *포인터를 쓰는 경우 char*gets_s(char*_Buffer,.. 2021. 2. 19.
C언어 | 동적 메모리 할당 예제(2) ✅ 오늘의 문제 : 소수의 개수 출력하기 임의의 N개의 숫자를 입력받고, 그 중에서 소수인 수의 개수를 출력하는 프로그램을 만들어보세요. (코뮤니티 모각코 과정 中 출제되어 푼 문제입니다.) 실행예시 숫자의 개수 : 5 3 9 13 20 12 소수의 개수는 2입니다. 초안 #define _CRT_SECURE_NO_WARNINGS #include #include int main() { int num, prinum = 0; int j = 0; printf("숫자의 개수 : "); scanf("%d", &num); int* numPtr = malloc(sizeof(int) * num); // (int 크기 * 숫자의 개수)만큼 동적 메모리 할당 //int* numPtr = calloc(num, sizeof(i.. 2021. 2. 18.
C언어 | 동적 메모리 할당 예제 ✅ 오늘의 문제 : 점수의 평균 구하기 학생의 수를 입력받은 뒤, 그 수만큼 학생의 점수를 입력받아 평균을 구하는 프로그램을 작성해보세요. (코뮤니티 모각코 과정 中 출제되어 푼 문제입니다.) 실행예시! 학생의 수 : 10 학생1: 20 학생2: 30 학생3: 10 학생4: 93 학생5: 57 학생6: 88 학생7: 84 학생8: 70 학생9: 40 학생10: 55 평균: 54 초안 #define _CRT_SECURE_NO_WARNINGS #include #include int main() { int student, sum = 0, avg = 0; printf("학생의 수 : "); scanf("%d", &student); //학생 수 입력 받기 printf("\n"); int* stuPtr1 = mal.. 2021. 2. 16.