본문 바로가기

국비과정

(24)
[ANDROID 국비과정] 2023.01.11 - 안드로이드 앱개발자 과정 C언어 1차원 배열(Array) 배열의 정의 같은 자료형의 변수 여러개를 묶어 저장하는 문법 배열의 주솟값, 크기 등 그림 참고 배열의 필요성 30명의 학생에 대해 각각의 점수를 입력받아야 한다고 생각해봅시다. 그러면 30개의 변수가 각각 만들어져야 합니다. 이는 아주아주 귀찮은 일일 뿐만 아니라, 메모리적으로도 비효율적이고 좋지 못한 방법일것입니다. 그래서 사람들은 이 부분을 해결할 '배열' 이라는 개념을 만들었습니다. 배열 선언과 데이터 저장과 출력 배열 선언 : 데이터타입 배열이름[배열의 크기]; 데이터 저장과 출력 : 코드를 통해 알아봅시다. #include void main() { int aaa[3]; aaa[0] = 1; // 데이터 저장 aaa[1] = 2; aaa[2] = 3; printf..
[ANDROID 국비과정] 2023.01.10 - 안드로이드 앱개발자 과정 C언어 함수 Function : 특정한 기능의 코드가 작성된 영역 함수 정의 문법 함수 호출 프로그램의 시작은 main() 의 중괄호 시작과 함께 시작되며, 중괄호가 끝나면 프로그램도 종료된다. 함수 호출을 위해서는 1. 함수를 만들어야 하고, 2. 호출해야한다. 다음 코드를 보자. #include void login(){ // 1. 함수 생성 printf("로그인"); } void main() { login();//2. 함수 호출 } 함수 프로토타입 그런데 문제가 하나 있다. 프로그램의 시작이 main() 함수라고 했는데, 위 코드 처럼 main() 함수 위에 다른 함수가 있다면, 그리고 그 다른함수의 숫자가 굉장히 많아진다면, 프로그램이 시작점이 어딘지 알기 힘들어질것이다. 그러면 다른 함수를 밑으로..
[ANDROID 국비과정] 2023.01.06 - 안드로이드 앱개발자 과정 C언어 제어문 : 프로그램의 진행 순서를 제어(변경) 조건문 if, if else 조건문 if 문법 : if ( 조건식(비교연산) ) { 참 일때 실행할 코드 } #include void main() { int age; printf("나이를 입력하세요 : "); scanf_s("%d", &age); if (age >= 20) { // 조건이 true 일때 실행할 영역 printf("환영합니다. 문나이트 입니다.\n"); printf("메인 스테이지로 이동하세요.\n"); int num; // if 문 실행시에만 생성되는 변수 printf("몇명이십니까?"); scanf_s("%d", &num); printf("%d 명 좌석으로 안내하겠습니다.\n", num); } } printf("\n 프로그램 종료")..
[ANDROID 국비과정] 2023.01.05 - 안드로이드 앱개발자 과정 C언어 상수 C언어 에서는 다음 3가지의 상수가 있습니다. 1. 리터럴 상수 : 흔히 말하는 ' 값 ' , RAM 에는 리터럴 상수를 위한 메모리가 할당됩니다. 즉, 정수, 실수 뿐 아니라 문자와 문자열 또한 상수가 될 수 있습니다. 정수 - 4바이트 실수 - 8바이트 문자 - 4바이트 (숫자로 취급) 문자열 - 글자수 크기만큼(ex. hello 는 5바이트) 2. 매크로(심볼릭) 상수 #include #define MAX 100 -> 매크로 상수 void main() { printf("%d \n", MAX); } 3. 상수화된 변수 void main() { const int a = 10; a = 20; -> 에러. a는 const 키워드 때문에 상수화가 되었음. 변경 불가. 또한 선언과 초기화를 함께 ..
[ANDROID 국비과정] 2023.01.04 - 안드로이드 앱개발자 과정 C언어 변수와 자료형 변수 : Data 를 저장하는 메모리(RAM) 공간 변수의 종류(Data Type) char short int long float double 변수선언 (변수의 종류) (변수의 이름); ex) int value; char a; 변수 이름 규칙 1.영문자만 가능하며 대문자는 구별. 2.숫자 가능 but 첫 글자는 X. 3.특수문자는 오직 _ 만 가능. 4.유의미한 명칭 사용. 5.카멜표기법 사용. 스네이크 표기법 vs 카멜 표기법 vs 파스칼 표기법 스네이크 표기법 : 단어 사이에 _ 를 추가하는 표기법. 카멜 표기법 : 소문자로 시작하고 이어지는 단어들의 시작은 대문자로 작성하는 표기법. 파스칼 표기법 : 단어의 첫 시작은 항상 대문자를 사용하는 표기법. 데이터 저장과 출력 데이터 ..
[ANDROID 국비과정] 2023.01.03 - 안드로이드 앱개발자 과정 C언어 printf() 화면에 데이터를 출력해주는 함수. printf("출력 data"); printf("")을 이용해, 큰 따옴표("")안쪽에 문자를 넣으면 그대로 출력해준다. 하지만 몇가지 출력이 안되는 문자는 아래와 같다. _ % , \ , "_ 아래와 같이 코드를 작성해서 출력할 때, 줄바꿈은 되지 않는다. 생각해보면 간단하다. 그렇다면 줄바꿈을 하기 위해서는 어떤 방식이 필요할까? void main() { printf("aaa"); printf("bbb"); } 줄바꿈을 해줄 수 있는 명령어를 컴퓨터에게 전달해야한다. 위의 코드를 다음과 같이 바꿔보자. void main() { printf("aaa\n"); printf("bbb"); } \를 활용하면 줄바꿈, 탭간격 등 특수문자를 활용할 수 있..
[ANDROID 국비과정] 2023.01.02 - 안드로이드 앱개발자 과정 자료의 표현과 연산 수의 체계 10진수 0~9로 이루어진 진법 2진수 0과 1로 이루어진 진법 8진수 0~7로 이루어진 진법 *16진수 * 0~F로 이루어진 진법 진법변환 10진수 -> 2진수 10진수 -> 8진수 10진수 -> 16진수 (15는 F 따라서 7F) 2진수 -> 10진수 1011(2) = 2^3 * 1 + 2^1 * 1 + 2^0 * 1 = 11 8진수 -> 10진수 273(8) = 8^2 * 2 + 8^1 * 7 + 8^0 * 3 = 187 16진수 -> 10진수 9FA(16) = 16^2 * 9 + 16^1 * 15 + 16^0 * 10 = 2554 2진수 -> 16진수 (4자리씩 끊어서 계산) 2진수 -> 8진수 (3자리씩 끊어서 계산) 16진수 8진수 : 2진수로 변환 후 16 혹은..
[ANDROID 국비과정] 2022.12.30 - 안드로이드 앱개발자 과정 1. EDPS : 전자계산기 EDPS(Electronic Data Processing System) 의 특징 신속성 / 정확성 / 대용량성 / 호환성 / 자동성 / 범용성 한번에 하나씩만 순서대로 명령을 처리함. *** 2. 중앙처리장치( CPU ) 주기억장치 : 현재 실행중인 프로그램의 데이터를 기억하는 장치 ( RAM ) 연산장치 : 산술 및 논리 연산 진행 ( 누산기, 가산기, 보수기, 상태레지스터, 어드레스 레지스터, 데이터 레지스터, 기억 레지스터) 제어장치 : CPU 는 하드디스크로의 접근이 불가하며, RAM 을 통해 하드디스크의 데이터를 접근할 수 있다. 3. 기억장치 주기억장치(RAM) : 프로그램은 반드시 주기억장치에 저장되어야 실행가능하다. 보조기억장치(ROM) : 오랫동안 보관이 가능..