목록분류 전체보기 (52)
코린이

오늘은 문자열 입력받는 방법에 대해 배웠다 scanf() 함수를 통해 문자열을 입력받을 때는 배열 이름 앞에 &나 배열의 뒤에 인덱스를 작성하지 않는다. 문자열의 끝에는 항상 문자열의 끝을 알려주는 NULL 문자가 들어간다. 문자열을 배열에 저장할 때는 반드시 NULL 문자의 크기까지 고려해 줘야 한다. 그리고 NULL 문자를 표기할 때는 정수 0, 문자 '\0', NULL로 표기 할 수 있다. 문자열을 담을 배열을 초기화 할 때는 ""안에 문자열을 작성 해 주면 된다. ex) char str[6] = "Hello"; 문자열을 담을 배열을 NULL 문자로 초기화 할 때는 char str[10] = {0, }; 형식으로 진행할 수 있다. 그럼 문제로 문자열을 마저 공부해 보겠다. Q1) Hello라는 문자..

2차원 배열 1차원 배열 도는 다시 배열로 선언함으로써 여러 개의 배열을 다시 배열로 만드는 방식 2차원 배열 선언 방법: 자료형 배열명[행 크기][열 크기] 2차원 배열을 초기화할 때는 {}와 개행을 적절히 사용해 준다. int arr[3][3] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; 2차원 배열을 사용하고 접근할 때는 보통 이중 반복문을 이용해서 접근한다. #include int main(){ int arr[3][3]; arr[2][1] = 10; printf("출력: %d\n",arr[2][1]); retrun 0; } #include int main(){ int arr[3][3] = { {1,2,3}, {4,5,6}, {7,8,9} }; for (int i = 0; ..

배열 오늘 배울 것은 배열이다. 배열은 일정한 간격을 두고 붙여놓은 것으로 특정 자료형을 가진 변수를 여러 개 선언하는 개념이다. 배열을 선언하는 방법은 자료형 배열명 [공간의 개수];으로 선언해 준다. 배열에는 각각의 공간을 나타내주는 숫자들이 있는데 이를 index(인덱스)라고 부른다. 인덱스는 0~ (선언한 공간의 개수 -1)까지 갖고 있다. 그 이유는 0부터 시작하기 때문이다! int arr[n-1]까지의 공간의 개수가 있다. 그리고 배열을 사용할 때는 반복문을 적절하게 사용해 줘야 한다. 배열을 선언하면서 초기화를 진행할 수 있는데 이때는 int arr[5] ={3,1,4,6,8}; 이러한 형식으로 초기화 값을 정해줄 수 있다. int arr[5] = {0, }; 형식으로 하면 모든 공간을 0으..

오늘은 Day1부터 Day11까지 배운 내용을 응용하여 문제 하나를 만들었다. 문제를 풀기 전에 함수 2가지를 배웠다. system("명령어") 이 함수는 콘솔 환경에서 사용되는 명령어를 실행시켜주는 함수로 cls 콘솔을 지워준다. Sleep(멈추는 시간) 시간 단위는 1/1000초로 콘솔 창을 잠깐 재워주는 함수이다.(멈춰 준다고 볼 수 있다.) system, Sleep 두 함수를 사용하기 위해서는 windows.h 헤더 파일을 선언해 줘야 한다. Q1) 카드 잔액을 충전 및 사용할 수 있는 프로그램을 만드시오.(처음 초기 금액은 만 원이 있는 상태로 진행) #include #include int main() { int num = 10000; int choice; int sum; int use; whi..

반복문 오늘은 while() 문을 공부하였다. while() 문에서 초기식은 while() 문 바깥에 존재해야 하고, 변화식은 종속 문장과 같이 존재해야 한다. 그리고 while() 문에서 종속 문장이 한 줄 일 때는 {}를 생략해 줄 수 있지만 종속 문장에 변화식이 같이 작성되기 때문에 {}를 생략하는 경우는 거의 없다. while() 문을 무한 루프를 사용할 때는 조건식에 1을 작성해 주면 된다. while()문의 원형: 초기식; while(조건식) { 종속문장 및 변화식; } while() 문에는 do ~while() 문이 있는데 do ~ while() 문은 while() 문과 전체적으로 비슷하지만 종속 문장을 최소 한 번은 실행시킨다는 특징을 갖고 있다. while() 문과같이 무한 루프를 사용할..
반복문 반복문은 조건식을 비교하면서 참일 경우 종속 문장을 실행시키고 변화식을 거쳐 조건식을 또 다시 비교하는 문법으로 for(), while(), do ~ while() 3가지 존재한다. 오늘은 for() 문에 대해 공부하였다. for문의 기본 원형: for(초기식; 조건식; 변화식) { 종속 문장; } for 문의 원형으로 초기식이 먼저 실행하고 그 뒤에 조건식에 맞으면 true 면 종속 문장을 실행시키고 false 이면 for 문을 종료한다. 마지막 변화식은 실행을 시킨 후에 다시 조건식을 반복한다. for 문 실행 순서 초기식 -> 조건식 -> 종속 문장 -> 변화식 -> 조건식 -> 종속 문장 -> 변환식 -> ... 순으로 진행된다. #include int main(){ for (int i =..
조건문 swith ~ case 오늘은 swith ~ case 문에 대해 설명하겠습니다. swith 문은 전에 공부했던 if 문과 같은 조건문이지만 if 문에서 ,=같은 부등식은 사용이 불가능하다. switch ~ case의 원형: swith(비교할 값) { csae 해당 값://각 조건 종속 문장; break; } default://나머지 종속 문장; break; 괄호 안에 비교할 값 공간에는 정수, 정수로 변환할 수 있는 값, 정수가 저장된 변수만 작성할 수 있다. 변수의 값에 따라 case에서 실행하는 값이 나온다.(case에 작성되는 값은 반드시 상수로 작성해 줘야 한다.) swith ~ case 문에서 break 키워드는 해당 문법을 탈출하는 용도로 사용되지만 프로그래머가 의도적으로 break를 ..
조건문 조건식을 비교하고 해당 조건식이 참이면 종속 문장을 실행하고, 거짓이면 탈출하는 것을 조건문이라고 한다. 조건문에는 if ~ else와 swith ~ case 두 개가 존재한다. 오늘은 if ~ else 문을 알아보겠다. if ~ else의 원형: if(조건식)//조건문의 시작 { 종속 문장; } else if(조건식)//조건문을 추가 { 종속 문장; } else//나머지 { 종속 문장; } 위에 코드가 if ~else 문의 기본 구조이다. 먼저 if(조건식)은 조건 문의 시작을 의미하고 else if(조건식)은 조건문을 추가로 생성하여 입력한다. 마지막으로 else를 넣어 나머지 종속 문장을 입력해 준다. if ~ else 문에서 조건식 뒤에 ;(세미 콜론)을 작성하게 되면 종속 문장이 사라지게..

https://www.acmicpc.net/problem/10951 10951번: A+B - 4 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 10951번: A+B - 4 두 수로 이루어진 여러 개의 테스트 케이스로 입력을 받으면 두 수의 합을 출력하는 문제입니다. while True: try: A,B = map(int, input().split()) 0 < A & B < 10 print(A+B) except: break 처음에는 A+B-3에서 똑같이 for문을 사용하는 줄 알고 문제를 풀었다가 테스트에 입력 숫자가 없는 것을 알고 다른 식으로 풀었습니다. try except문은 처음 써봐서 처음에는 이해하는데 시간이 걸렸습니다. 먼저 while..

https://www.acmicpc.net/problem/1546 1546번: 평균 첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보 www.acmicpc.net 해당 입력한 점수에 가장 높은 점수 * 100로 바꿔주어 평균을 구하는 문제입니다. n = int(input()) #과목 수 score = list(map(int, input().split())) #점수 입력 new = 0 for i in range(n): new += score[i]/max(score)*100 #새로운 점수 print(new/n) 우선 1번째 코드부터 3번째 코드는 가장 높..