홍정모의 따라하며 배우는 C언어

숫자 2개의 입력을 받고 2개를 더한 값을 출력하는 프로그램 사용하는 함수 - scanf(), printf() /* 홍정모의 따라하며 배우는 C언어 간단한 입출력 프로그램 만들기 */ #include int main() { int i = 0, j = 0, sum = 0; // 변수는 무조건 초기화하는것을 권장 printf("Input two integers\n"); scanf("%d%d", &i, &j); sum = i + j; printf("Your numbers are %d and %d\n", i, j); printf("%d \+ %d = %d\n", i, j, sum); return 0; } 원을 입력 받으면 달러로 변환해서 출력하는 프로그램 사용하는 함수 - scanf(), printf() /* ..
scanf() 함수 - 콘솔창으로부터 사용자의 입력을 받아오는 함수 #include int main() { int i = 0; scanf("%d", &i); // & : ampersand printf("Value is %d\n", i); return 0; } * 콘솔창에 아무숫자나 입력하면 printf()함수가 출력해준다. * f : formatted의 약자로 형식을 맞춰 나타낸다는 뜻 * 포매팅(formating) : %~, ~ 부분에 뭐가 들어가는지 형식을 지정해주는 것. "%d" : scanf 함수에서는 입력을 어떻게 받을지, printf함수에서는 출력을 어떻게 할지 formating 해주고 있다.입력과 출력을 d(decimal, 10진수)로 받겠다고 포매팅해주고 있다. * &(ampersand) ..
- 변하는 값인 변수(Variable). 변하지 않는 값인 상수(Constants). ​ - 변수와 리터럴상수 자료형 변수(variable) = 리터럴상수;(literal constant) int angel = 1004; 변수는 어떤 값이 저장 될 수 있는 메모리 공간을 의미한다. 메모리 공간에 담기는 값의 바뀌면 변수의 값도 바뀐다. 반면에 리터럴상수는 문자 그대로의 의미를 갖고 값의 바뀔 수 없다. ​ - 기호적상수와 리터럴상수 한정자(제한자, Qualifier) 자료형 기호적상수(Symbolic constant) = 리터럴상수(literal constant); const int angel = 1004; 자료형과 const라는 키워드를 함께 사용하면 변수의 값을 바꿀 수 없다. 값을 못 바꾸는 변수는..
자료형이 필요한 이유 - 자료형이란 정수인지 실수인지 어떤 종류의 숫자인지 미리 구분해서 알려주는 것이다. - 메모리 사이즈를 어느정도 사용하는지 미리 알려주는 것으로 큰 숫자나 범위가 넓은 숫자를 다룰 때는 메모를 많이 써야한다. - 자료형 종류 int a; short b; char c; double d; float f; 자료형 크기(바이트) 범위 int 4 -2,147,483,648 ~ 2,147,483,647 short 2 -32,768 ~ 32,767 char 1 -128 ~127 ··· ··· ··· ~ ··· - 큰 자료형으로 작은 숫자를 사용하지 않는 이유는? 인공지능 등 복잡한 연산시 데이터 차이로 인한 메모리공간의 소모량이 연산속도에 차이가 나기 때문이다. 그래서 다양한 자료형들이 메모리..
#include void my_func() {// do something } int main() { int x=0, y=1; int z = 0; z = x + y; return 0; } 문법적으로 오류가 없는 코드라도 사람이 보기 불편하면 좋은 코드가 아니다. #include void my_func() { // do something } int main() { int x = 0, y = 1; int z = 0; z = x + y; return 0; } * 보기 쉽게 띄어쓰기 한다. (int x=0, y=1; → int x = 0, y = 1;) 'int x=0, y=1;' 이 부분을 드래그하고(단축키 :Shift + end 그 줄 끝까지 드래그) 잘라내기(단축키 : Ctrl + X) 후 다시 붙여넣기(단..
프로그래머들이 대부분의 시간을 사용하는 곳은 코딩이 아니고 오류를 제거하는 디버깅 작업이다. 그만큼 디버그를 잘 사용하는 것은 중요 한 일이다. #include void say_hello(void); // prototyping, function declaration int main() { int x, y, z; x = 1; y = 20; z = 3; z = x + y; say_hello(); return 0; } void say_hello(void) // function definition { int x = 1; x = 10; printf("Hello, World\n"); return; } - say_hello함수의 변수정의를 찾고 싶으면 : say_hello 우클릭 - Go To Definition -..
여러번 반복해서 사용하는 함수를 묶어서 하나의 함수로 만들어서 사용하기. - 이미 만들어져 있는 함수를 가져다 사용하지 않고 함수를 직접 만들 수 있다. #include int main() { printf("SM jjang.\n"); printf("SM jjang.\n"); printf("SM jjang.\n"); printf("SM jjang.\n"); return 0; } #include void say_SMjjang(void) { printf("SM jjang.\n"); return; } int main() { say_SMjjang(); say_SMjjang(); say_SMjjang(); say_SMjjang(); return 0; } 여러번 반복해서 쓰인 printf함수를 묶어서 새로운함수(sa..
comment 부가적으로 메모하는 기능. 출력시 주석부분은 컴파일러가 빼고 읽는다. /* Written by SMKIM */ #include int main() { /* This is my code */ int x, y, sum; // variables x = 1; y = 4; sum = x + y; // add two numbers printf("The answer is %i", sum ); printf("\n%i + %i = %i", x, y, sum); printf("\n\a"); return 0; } 주석을 다는 방법 1. 블럭주석 /* */ 블럭안에서 /* 이 안에 쓰면 주석으로 처리 */ 맨 윗부분에 /* 저작권자 표시 */ 2. 라인주석 // sum = x + y // 이 문장 전체의 주석 ..
printf(문자)함수로 문자 출력하기. #include int main() { printf("\"The truth is... \nI am Ironman.\"\n); return 0; } 입력 → printf() → 출력 입력은 출력할 문법을 받아야 한다. 그래서 입력은 printf함수의 안에 들어간다. 함수를 실행시키면 화면에 출력시키는 기능을 한다. ​ printf(...) printf formatted의 약자로 형식을 맞춰 나타낸다는 뜻이다. 파이썬 같은 다른 언어에서는 형식을 하나하나 맞추지 않고 print함수를 사용한다. 그래서 따로 \n을 쓰지 않고 print함수를 두 번 사용하면 줄이 바뀐다. C언어는 문법을 엄격하게 만들었기 때문에 잘 배워두면 다른 언어 배울 때 쉽다. ​ \n (esca..
변수가 편리한 이유 변수 선언 - 변수에 값을 대입 - 연산 - 연산 결과를 변수에 대입 변수라는 개념을 도입하면서 메모리의 주소를 직접 알 필요가 없어졌다. 프로그래머가 작업을 편리하게 할 수 있어졌다. 변수를 선언하는 법 int main(void) { int x; int y; int z; x = 1; y = 2; z = x + y; return 0; } int x; - declaration(선언한다) - 자료형을 입력하고 내가 사용하고 싶은 자료형의 이름을 입력하고 ;을 입력해 문장을 끝낸다. - 정수 하나를 담을 만한 메모리 공간을 확보했고 메모리 공간을 x라는 변수를 통해서 접근할 수 있다는 의미. - 변수 선언을 블럭(Body)안에서 맨앞에 하게 되어 있었는데 요즘은 코드 중간중간에 쓸 수 있다..
개발원슝이
'홍정모의 따라하며 배우는 C언어' 태그의 글 목록