
💕char형 배열의 문자열 저장과 '널(null)' 문자 문자열의 저장을 목적으로 char형 배열을 선언할 경우에는 특수문자 '\0' 이 저장될 공간까지 고려해서 배열의 길이를 결정해야 한다. 문자열의 끝에 자동으로 삽입되는 문자 '\0'을 가르켜 '널(null)' 문자라 한다. 이때 널 문자의 아스키 코드 값은 0이지만 이를 문자의 형태로 출력할 경우, 아무런 출력이 발생하지 않는다. scanf 함수를 이용해 배열에 문자열을 입력받는 예제를 살펴보자 #include int main() { char str[50]; int idx = 0; printf("문자열 입력: "); scanf("%s", str); //문자열을 입력 받아서 배열 str에 저장 printf("입력 받은 문자열: %s \n", str)..

예제 1) 길이가 5인 int형 배열을 선언해서 프로그램 사용자로부터 총 5개의 정수를 입력 받자 ! 그리고 입력이 끝나면 다음의 내용을 출력하도록 예제를 작성해보자. 입력된 정수 중에서 최댓값 입력된 정수 중에서 최솟값 입력된 정수의 총 합 단, 반드시 입력을 완료한 상태에서 '최댓값'과 '최솟값' 그리고 '총 합'을 계산해야 한다. 참고로 배열을 대상으로 scanf문을 구성할 때에는 다음과 같이 해야 한다. scanf("%d",&arr[2]); // 3번째 배열ㅇ소에 정수 값 입력 받음 변수를 대상으로 & 연산자를 붙여주듯이. 배열요소를 대상으로 할 때에도, & 연산자를 붙여야 한다. 🤦♀️ 생각 과정 1. 먼저 사용자로부터 5개의 정수를 입력받아야하니 for문을 활용하여 배열의 수를 입력받으면 되..

if 문이란 조건식의 결과에 따라 중괄호 {}로 묶어놓은 블록을 실행하거나 실행하지 않도록 하는 문법이다. 조건식에는 true 또는 false의 값을 낼 수 있는 연산식이나 boolean 변수가 올 수 있다. 조건식이 true면 블록을 실행하고 false면 블록을 실행하지 않는다. if문 작성 방법 if (조건문) { 실행문 .. } if (num1>num2) // num 1이 num 2 봐 크다면, 조건이 참일때 아래의 문장 실행 { printf("num1이 num2 보다 큽니다. \n"); printf("%d>%d \n",num1,num2); } 여기서 만약 조건이 만족될 때 실행할 문장이 하나라면 다음과 같이 중괄호는 생략이 가능하다. 그러나 if 문 만 계속 사용하게 된다면 조건검사는 모두 실행되..

'while 문의 중첩'은 말 그대로 while 문 안에 while문이 포함된 상황을 의미한다. 대표적인 예시가 구구단의 전체 출력이다. 2단부터 9단까지 출력을 하는 예제를 살펴보도록 하겠다. 먼저 예시로 구구단 2단을 떠올리면 2*1 = 2 처럼 2부터 9와, 1부터 9까지를 나타내주는 각각의 변수들이 필요하다. 즉 각각 변수를 설정하여 while 문을 이용해 2부터 9, 또 while 문을 이용해 1부터 9를 반복하게끔 하면 된다. #include int main(void) { int cur=2; // 2단부터 9단까지 출력하기 위한 변수 설정 int is=0; // 1부터 9까지 출력하기 위한 변수 설정 while(cur
✔ 반복문의 필요성 만약 "HELLO WORLD" 를 총 열 번 출력하고 싶다면 어떻게 할 것인가 ? 반복문을 모르는 상태라면 printf 함수 호출문을 열번 적어주어야한다. 반복문은 이러한 비효율성에서 벗어나 효율적으로 코드를 작성할 수 있게 도와준다. ✔반복문의 종류 반복문의 종류로는 1) while 문 2) do ~ while 문 3) for 문 이 있다. for문과 while 문은 서로 변환이 가능하여 반복문을 작성할 때 어느 쪽을 선택해도 무방하나, for 문은 반복횟수를 명확히 알고 있을 때 주로 사용하며 while 문은 조건에 따라 반복횟수를 결정해야할때 주로 사용한다. ✔ while 문 while문은 특정조건을 주고 그 조건을 만족하는 동안, 특정영역을 계속해서 반복하는 구조이다. whil..

상수 (constant) 란 ? 항상 같은 수, 즉 프로그램 시작부터 끝까지 변하지 않는 값을 의미한다. 변수(variable)란 ? 상수 값을 기억시키고 값을 변경하기 위해 메모리상(RAM)의 임의의 위치에 필요 크기만큼 할당된 기억공간을 의미한다. 변수는 하나의 데이터 값을 가질 수 있으며 한번 정해진 값이 고정되는 것이 아닌 계속 바뀔 수 있는 수이다. 또한 담기는 데이터에 따라서 변수의 자료형(Data type)이 결정된다. c언어에서의 모든 변수는 반드시 블록의 선두에서 미리 선언되어야한다. 즉, 상자를 변수 안에 들어가는 내용물을 상수라고 이해하면 쉽다. C언어의 기본 자료형 ( Data Type ) C는 char, int, float, double등 기본 데이터 형이 있고 몇개의 한정자(qu..
먼저 C언어의 기본 예제를 보며 한줄한줄 해석해보도록 하겠다. #include /*선행처리기 명령 (preprocessor 지시자)*/ void printNumber(int); /* printNumber() 함수의 선언부, void 무지형 (값 x) */ int main() /* main함수는 전달인자가 없다, return 값이 int 형 값이다 */ { int num; /* num의 변수 선언 */ num = 1; /* 생성된 변수 num에 숫자상수 1을 대입 */ printNumber(num); num = 3; printNumber(num); return 0; /*생략 불가능*/ } void printNumber(int n) { printf("정수값은 %d입니다. \n", n); /* 선행처러기에 코..

함수 (function) 란 ? 함수는 기능을 구현하는 부분을 따로 떼어 구현하는 것이다. 함수는 크게 1) 사용자 정의 함수 2) 라이브러리 함수 두가지로 구분된다. 1) 사용자 정의 함수 사용자가 구현하고 싶은 기능을 구현 하는 것이다. 변수처럼 규칙에 따라 함수의 특성을 살린 이름을 지으면 된다. 2) 라이브러리 함수 가장 흔히 쓰는 prinf(), scanf() 등이 이에 포함한다. 두 함수는 stdio.h 파일에 정의되어 있다. 함수의 특징 1) 외형적인 측면의 특징 함수명 뒤에는 항상 ( ) 가 따라다닌다. ( ) 안에 든 값을 전달인자(argument) 라고 부른다. 전달인자로 입력되는 값은 함수입장에서 상수인지 변수인지 표현식으로 입력됐는지 알 수 없고 상관하지도 않는다. 즉, 전달인자는 ..