목록분류 전체보기 (41)
자라나라

2차원 배열 앞서 배웠던 배열은 1차원이다. 1차원 배열은 int arr[행][열];로 선언한다. 선언 및 초기화하는 법 첫번째 방법 각 행을 {}로 묶어서 , 로 구분 아래와 같이 줄바꿈을 하지 않아도 된다. 또한, 행을 구분하지 않고 그냥 줄줄이 늘어놓는 방법도 있다. 하지만 가독성이 제일 좋은 방법은 첫번째가 될 것이다. 이제 작성한 배열을 출력해보자. 이번엔 배열 전체를 출력해보자 ! 파스칼의 삼각형 파스칼의 삼각형은 양옆의 수를 더하면 그 아래의 수가 나온다. 또한 모든 행은 좌우 대칭을 이루고 있는데 이는 곱셈공식의 계수와 똑같은 모습을 보여 이항정리에 유용하게 쓰일 수 있다. 이건 오늘 중요하지 않고. 이 삼각형을 배열로 만들어 보자. 가운데 정렬이 되어있는 저 숫자들을 우선 왼쪽정렬 해보면..

포인터란? 메모리의 주소값을 저장하는 변수이다. 포인터 변수라고도 부른다. char형 변수에 문자를, int형에 정수를 저장하는 것처럼 포인터는 주소값을 저장한다. ex) int a = 20; // 변수 선언 int *ptr = &n; // 포인터 선언 여기서 &는 주소연산자, *는 참조 연산자가 되는 것이다. *붙은 녀석이 주소를 저장한다 생각하면 되겠다. 길을 찾아가주는 반딧불이라고 생각하자. 왠지 그렇게 생겼다 포인터의 선언 타입* 포인터이름; ex) int* ptr; 포인터의 선언과 동시에 초기화를 하는 것이 좋다 ! 타입* 포인터이름 = &변수이름; 또는, 타입* 포인터이름 = 주소값; (*의 위치는 타입에 붙어있어도 되고 포인터 앞에 붙어있어도 되고 그 사이에 있어도 되고 상관없다) 여기서 주..

배열(Array)란, 한가지 자료형을 연속적으로 나열하는 것을 말한다. 출석부와 비슷하게 생각할 수 있다. 선언 방법은 자료형 변수이름[갯수];로 한다. ex) int money[4] = {1000, 5000, 10000, 50000) 위와 같이 하나하나 입력해주는 방법이 있고 더 간단하게는 아래와 같은 방식이 있다. int형 arr라는 변수는 5개를 저장할 수 있는 배열로 선언되었고, 각각의 요소에 1,2,3,4,5를 저장하도록 초기화 되었다. 중괄호{}로 묶어 각 요소를 콤마로 구분하는 것이 초기화다. 배열의 초기화는 아래와 같이 갯수보다 적은 요소를 저장할 수 있다. 나머지 값은 0으로 초기화 되는 걸 알 수 있다. 그래서 배열을 모두 0으로 초기화하고자 할 때는 int arr[5] = {0}; 이..

오늘은 함수에 대해 배워보자. 사실 C언어를 배우는 내내 우린 계속 함수를 써왔다. 함수이름(매개변수) { 몸체 } 이렇게 함수는 함수명과 몸체 등으로 구성 되어있다. 프로그램이 수행하고자 하는 기능이 있지? 그 기능에 대한 명령문들의 집합이 함수인 것이다. 프로그래머들은 프로그램에서 자주 사용 되는 코드블록은 한 번 만들고 그걸 재사용하면 어떨까 생각했다. 아래의 예시를 보자. 위와같이 우리가 자주 쓰던 printf다. () 안에 원하는 문자만 입력하면 그대로 출력이 된다. 난 입력만 했을 뿐 , 화면에 글자를 나타내는 기능 자체는 내가 만든 게 아니다. 그건 printf가 한 것이다. 그리고 printf의 실제 코드는 아래와 같다. 우리가 간편히 작성했던 printf 코드 한 줄은 이렇게 복잡했다. ..

if else 매우 기본적인 형태는 이렇다 조건이 추가되면 if else를 사이에 넣는다. 몇 개가 들어가도 상관없다. 참고로 if문에서 동등함을 표현할 땐 꼭 ==으로 써줘야한다 ! 깜빡하고 =이라고 썼다가 출력이 안 돼서 뭐가 문젠지 한참을 들여다봤었다. . break / continue if ~ if else ~ else 문에서는 break 사용 불가 (return을 쓰자, 하지만 break 처럼 순차적으로 탈출하는 게 아니므로 신중하게 쓰기) 일단 아래의 예시를 보자 이 반에는 1~30번까지 있다. 오늘은 5번까지 청소를 하고 나머지는 집에 가는 날. 이걸 if문으로 표현해보자 이렇게 하면 어떨까 왠지 결과는 안 봐도 뻔하다 1~5번 학생까지 발표를 하라고 할 것이고, 그 후엔 6~30번까지. 즉..

반복문 for, while, do while 기본적으로 알아둘 것! 위에서 볼 수 있듯, ++이 변수 앞에 붙으면 연산(변수에 1을 더함)을 수행한 값을 출력하고 변수 뒤에 ++이 붙으면 출력되고 난 후에 더한다. for for(선언; 조건; 증감){body)} while 선언 while(조건){body;증감;} 여기서, printf("@#$", i, i++)로 작성해도 되긴한다. 근데 위와같이 위의 예문과 같이 작성하면 출력하고 나서 더하기 때문에 hi0~hi9까지 출력되지만 printf에 i++을 작성하면 증가된 채로 출력이 되어 결과물은 hi1~hi10이 된다. 반복 횟수만 따지는 경우엔 상관 없을 듯 하다. do .. while do while문은 보통 조건과 상관없이 한 번은 실행하고 싶을 때 ..

C언어를 배울 것이다 그렇게 됐다. 우선 맨 마지막에 등장하는 return 0;은 int 0을 반환한다는 뜻인데, 운영체제에 꼭 값0을 반환한다기 보다는 현재 실행중인 함수를 끝내려고 쓰는 것이다. \n은 줄바꿈표시이다 %d는 쉼표 뒤에 오는 정수가 차례로 대입되서 출력된다.(decimal 의 약자. 십진법) int age = 12 라고 한 번 age는 정수라고 선언해주면 이후로는 age를 쓸 때 int를 붙여주지 않아도 된다 정수형 변수는 int 실수형 변수는 float float 뒤에는 위와같이 f를 붙여주는 게 좋다. 이유는 아직 잘 모르지만 https://edu.goorm.io/qna/2525 를 참고하자 (참고 float은 소수점 6번째 자리까지, double은 소수점 15번째까지 나타낸다 + ..

그새 정신이 좀 해이해졌다.. 다시 마음을 다잡고 열심히 해보자 우선은 부스트코스의 생활코딩님 강의로 시작해보자 script tag는 head 말고 body에 넣자! head에 넣으면 자바스크립트 태그를 먼저 읽느라 페이지의 로딩속도가 느려질 수 있다. 음.. 부스트코스를 보기 전에 다른 유튜버분의 자바스크립트 입문강좌를 먼저 보는 게 낫겠다.. 늘 이런식으로 어떤 개념을 이해하려고 구글링했다가 거기서 파생된 것에 대해 또 구글링하고 구글링하고.. 이렇게 꼬리의 꼬리를 물어 결국 생각보다 매우 많은 시간이 소요된다 흑 ㅠㅠ 이렇게 배우는 거겠지 !! 화이팅하자 ~..~ let & const (var의 경우 버그 발생과 메모리 누수의 위험 등이 있기 때문에 var말고 let, const를 사용하는 것이 좋..
radio나 checkbox 등에서 input[id="monkey"]:checked ~ .class {} input[type="radio"]:checked + label 이런 형태로 많이 쓰는군 if문의 느낌도 난다 이렇게 겨우겨우 슬라이드만 하나 만들어봤는데 하아.. 두번째 사진만 왜 사이즈가 다른지 이것저것 다 건드려봐도 모르겠다.. 틈틈이 문제를 찾아보도록 하고 웹페이지의 다른 부분도 만들어보고 이제는 슬슬 자바스크립트도 시작해야겠다!

슬라이더 하나 만들어보는 것이 쉽지 않군~,, 그래도 이렇게 필요한 태그/요소들 찾아가며 놓친 부분들 공부할 수 있어서 좋은듯~ 절대 성급하게 생각하지 말자! 멈추지만 않으면 된다 슬라이드 이미지를 넣으려니 transform 태그가 필요하다 transform은 포토샵처럼 요소의 크기, 회전, 기울기, 이동효과 등을 부여하는 함수를 제공한다. transform: scaleX(n) scale값은 크기에 관여한다. scaleX는 X축(가로)의 길이를, scaleY는 Y축(세로)의 길이를 조정한다. (n)의 숫자는 배수를 뜻한다. 바로 예를 들어보자 여기서 transform:scale 값을 줘보자! -> transform: scaleX(2) 를 준 경우. 가로로 2배 커졌다 -> transform: scaleY..