언어 113

[코딩자율학습] 13일차 프로젝트 어항에 물주기

전체코드 #include #include #include //전역변수 선언 int level; // 레벨 int arrayFish[6]; // 어항 int* cursor; // 어항 배열에 접근해야하니까 포인터 변수 사용. //함수 선언 void initData(); // 게임 초기화 void printfFishes(); //어항 물 높이 출력 함수 void decreaseWater(long elapsedTime); //어항의 물을 증발(감소)시키는 함수 선언 int checkFishAlive(); //모든 물고기가 죽었는지 확인 함수 int main(void) { long startTime = 0; // long은 int와 같이 정수를 담을 때 사용, 시간을 다룰 때 주로 long을 사용 int num..

언어/C 2024.03.20

[코딩자율학습] 12일차 포인터

📌 변수와 메모리 #include int main(void) { int 철수 = 1; int 영희 = 2; int 민수 = 3; printf("철수네 주소: %p, 암호 : %d\\n", &철수, 철수); //철수네 주소: 0000003D3211F8E4, 암호 : 1 a: 10, b : 20 swap() 함수 안 => a: 20, b: 10 swap() 함수 호출 후 => a: 10, b : 20 함수에서는 a와 b가 값이 바꼈는데 호출 후의 값에는 그대로임. 왜 그럴까??? 실제로는 두 변수 자체가 아닌 두 변수의 값만 전달해서 그럼. 무슨 소리냐면 int main(void) { int a = 10; int b = 20; printf("a의 주소: %p\\n", &a); printf("b의 주소: %p..

언어/C 2024.03.19

[코딩자율학습] 11일차 프로젝트: 자라나라 머리머리

#include #include #include //난수 생성하니까 추가 int main(void) { srand(time(NULL)); int treatment = rand() % 4; //약병 4개 중 하나 선택해야하니까 %4로 난수 생성 printf("\n\n == 자라나라 머리머리 == \n\n"); int cntShowBottle = 0; //이번 회차에 조합할 약병 개수 int prevCntShowBottle = 0; // 앞 회차에서 조합한 약병 개수 //3회 테스트 for (int i = 1; i 1 if (randBottle == treatment) { isIncluded = 1; // 진짜 발모제가 포함됨. } } else { // 이미 선택된 약병이면 중복이므로 다시 선택 j--; /..

언어/C 2024.03.18

[chart.js] 분산형 그래프 포인트를 이미지로

1. 포인트 이미지, 테두리 설정 2. hover시에만 이미지로 📌 포인트 이미지, 테두리 설정 - 분산형 차트..! 뭔가 무시무시해보임. usePointStyle: true, // 포인트 스타일 바꾸기 위해서 true pointStyle: image, // 선언된 이미지 가져옴 clip: false, // 그래프 밖으로 이미지 잘리는 거 막기 위해서 false const imageBorder = { id: 'imageBorder', beforeDatasetsDraw(chart, args, plugins) { const {ctx, data} = chart; ctx.save(); const x = chart.getDatasetMeta(0).data[0].x; const y = chart.getDataset..

언어/Chart.js 2024.03.16

[코딩자율학습] 10일차 배열과 문자열

📌 배열 더보기 💡 배열 형식 자료형 배열명[배열크기] int subway_array[3] (코드, 출력결과) #include int main(void) { int subway_array[3]; subway_array[0] = 30; subway_array[1] = 40; subway_array[2] = 50; for (int i = 0; i < 3; i++) { printf("지하철 %d호차에 %d명이 탐.\\n", i + 1, subway_array[i]); } return 0; } 배열의 크기는 항상 상수 📌 배열 초기화 #include int main(void) { int arr[10] = { 1,2,3,4,5,6,7,8,9,10 }; //배열 초기화 for (int i = 0; i < 10; i..

언어/C 2024.03.15

[코딩자율학습] 8일차 함수

양이 많아지기 시작했다... 📌 함수로 사칙연산하기 (형식) 반환형 함수명(전달값); int main(void) {} 반황형 함수명(전달값) { // 수행할 문장 } (함수 사칙연산) void p(int num); int main(void) { int num = 2; p(num); num = num + 3; p(num); num = num - 1; p(num); num = num * 3; p(num); num = num / 6; p(num); return 0; } void p(int num) { printf("num은 %d입니다\\n", num); } 원래는 계산식마다 printf()를 통해 문구를 출력했었지만 함수를 통해서 간단하게 출력 가능! 더보기 💡 함수를 사용하는 이유 코드 중복 방지하고 효율적..

언어/C 2024.03.13

[코딩자율학습] 7일차 여러방향으로 분기하기

📌 난수 생성하기 #include #include #include int main(void) { printf("난수 초기화 이전... \\n"); for (int i = 0; i < 10; i++) { printf("%d", rand() % 10); } printf("\\n\\n난수 초기화 이후... \\n"); srand(time(NULL));//난수 초기화 for (int i = 0; i < 10; i++) { printf("%d", rand() % 10); } return 0; } 난수를 초기화 안하면 계속 같은 수로 나옴. 난수를 제대로 뽑으려면 항상 난수 초기화를 한 후에 rand()함수를 사용해야함. ❗ rand() 함수를 사용하려면 #include #include 이 필요함. 📌 switch..

언어/C 2024.03.12