게임프로그래밍 개발 수업/C언어 수업 (13) 썸네일형 리스트형 C언어 4.11 스트림과 데이터의 이동 데이터의 입출력이 가능한 이유 스트림이란 ? 영어 단어로는 어떤 흐름이라는 뜻이 있다. 말 그대로 데이터의 흐름, 각각 입력과 출력의 흐름이 있기 때문에 출력과 입력이 가능한 것이다. 입출력 스트림이란? OS가 데이터의 입출력을 위해 놓아주는 통로(tunnel)이다. 문자열을 입력받기 가장 적절한 함수는 fgets 함수이다. #include int main() { char str[7]; int i; for (i = 0; i < 3; i++) { fgets(str, sizeof(str), stdin); printf("Read %d: %s \n", i + 1, str); } return 0; } 엔터키입력을 해보면, 줄바꿈으로 받아들이긴 하지만 뒤에 올 문자입력의 기회가 사라지는 문제가 생긴다. 표준 입출력.. 04.06 C언어 수업 #include//표준 입출력 장치 헤더 #include//라이브러리 헤더 파일, rand() srand() 할 때 사용, 동적 할당에서 사용 #include//strlen 문자열 길이 strcpy_s strcat_s 등등에 대한 기능을 사용 할 수 있게 됨 #include//랜덤값 출력시 srand(int)time.h(NULL) 사용 가능 time.h를 쓸 수 있다. void bubble_sort_ascending(int arr[], int n); void bubble_sort_descending(int arr[], int n); int main() { //1차원 배열의 길이가 100인 배열을 선언한 다음 랜덤값을 배열에 저장한다. 1부터 100사이의 수 중에 하나로 배열에 저장한다. //버블정렬로 오.. C언어 04-03 string.h 헤더 파일 사용하기 04월03일에 진행한 수업 내용입니다. 문자열 관련한 헤더파일을 추가 해서 사용해 보았습니다. strlen() NULL 을 제외한 문자열 길이를 반환합니다. strycpy_s() 문자열을 복사하여 넘깁니다. strcat_s() 덧붙이기 문자열을 다른 배열에 덧붙입니다. strcmp() 동일한 문자열인지 검사 동일한 문자열이면 0(false)을 반환합니다. #include #include #include//문자열 관련 기능 헤더파일 int main() { char str[20] = "So Simple"; char str2[20] = "Hello"; char str3[30] = "Hi"; printf("str 배열의 길이는 : %d \n", strlen(str));//strlen은 NULL을 제외한 문자열 .. C언어 수업 포인터와 배열 23-03-30 수업 내용입니다. 사용한 사진 및 자료의 출저는 윤성우의 열혈C 프로그래밍 입니다. ====== 오렌지 미디어 ====== (orentec.co.kr) ====== 오렌지 미디어 ====== #include int main() { int arr[3] = { 0,1,2 }; printf("배열의 이름: %d \n", *arr); printf("첫 번째 요소: %p \n", &arr[0]); printf("두 번째 요소: %p \n", &arr[1]); printf("세 번째 요소: %p \n", &arr[2]); /*arr = &arr[1];*/ return 0; } 이름의 값을 따오게 되면 첫번째 값이 나온다 (*) 가 붙으면 값을 참조함 *arr = 0 *(arr+1) = 1 *(arr.. C언어 배열에 문자열 대입, 포인터의 개념 이해하기 3월 29일 수업 내용입니다. #include #include #include #include int main() { char str[50] = "I like C programing"; printf("string: %s \n", str); str[8] = '\0';//9번째 요소에 널 문자 저장 printf("string: %s \n", str); str[6] = '\0';//7번째 요소에 널 문자 저장 printf("string: %s \n", str); str[1] = '\0';//2번째 요소에 널 문자 저장 printf("string: %s \n", str); return 0; } 컴파일러가 NULL문자를 만나면 종료로 인식한다. #include #include #include #include in.. C언어 1차원 배열, 문자열의 입력과 출력 3월 28일 수업 내용입니다. 배열이란 무엇인가? 다수의 정보를 저장하기 위해 사용, 변수선언 자체를 다수로 하게 된다. 단순히 다수의 변수 선언 역할만 하지는 않는다. 배열로 할 수 있는 일이 더욱 많다. 1차원 배열에 필요한 구성요소는 3가지, 위와 같다. 배열의 이름 자체가 주소다. 배열의 구조를 알아보는 예제 #include int main() { int arr[5]; int sum = 0; arr[0] = 10, arr[1] = 20, arr[2] = 30, arr[3] = 40, arr[4] = 50; for (int i = 0; i < 5; i++) { sum += arr[i]; } printf("합계 : %d \n", sum); return 0; } 출력 해보면 결과는 150이 나온다. f.. C언어 for문의 중첩, 지역변수와 전역변수 중첩 for문의 활용 #include const int BREAD = 1500;//빵 가격 const int SNACK = 1700;//과자 가격 const int DRINK = 1400;//음료수 가격 int main(void) { int i, j, k; int money; printf("현재 당신이 소유하고 있는 금액: "); scanf_s("%d", &money); for (i = 1; i < money / BREAD; i++)//빵을 몇개 살 수 있는가 { for (j = 1; j < money / SNACK; j++)//과자 몇개 살 수 있는가 { for (k = 1; k < money / DRINK; k++)//음료수 몇개 살 수 있는가 { if (money == BREAD * i + SNAC.. C언어 스위치문과 3항연산자 03월24일 오늘은 스위치문을 학습 했던 날입니다. #include #include #include #include //switch문 int main() { int num; printf("1이상 5이하의 정수입력: : "); scanf_s("%d", &num); switch(num) { case 1: printf("One \n"); break; case 2: printf("Two \n"); break; case 3: printf("Three \n"); break; case 4: printf("four \n"); break; case 5: printf("Five \n"); break; default: printf("I don't know! \n"); break; } return 0; } 1~5 외의 수를 .. 이전 1 2 다음