Notice
Recent Posts
Recent Comments
Link
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Archives
Today
Total
관리 메뉴

Fear is a habit. I'm not afraid.

This is CS50 (2) C 본문

basic

This is CS50 (2) C

sylviaisthebest 2024. 5. 30. 14:03

목차

 

(1) C

- 다룰 개념은 함수와 조건, 불리언 표현과 루프를 이용하는 것!

#include <stdio.h>

int main(void)
{
    printf("hello, world\n");
}

 

1. 초록색 깃발이 클릭되면 main을 실행합니다.

- f는 형식화된 형태를 의미합니다.

- C: 텍스트 기반 언어

 

- 프로그래밍 환경에는 두가지 구성요소가 있다.

1. 코드를 작성하는 부분 where i write my actual code

2. 터미널 terminal window

- 일종의 옛날 인터페이스

- 프롬프트에 입력하고 엔터를 치면 코드를 실행 run command 할 수 있다.

- 대부분의 초기 프로그래밍 언어들은 명령어 입력 방식을 사용함

 

- #include<stdio.h> 가 필요한 이유: 없으면 printf를 인식하지 못함.
- 코드는 컴퓨터가 인식하지 못한다. 이런 코드를 컴퓨터가 이해할 수 있도록 0과 1로 번역하려면 중간 단계가 필요하다.

- source code -> [  ] -> machine code (object code)

- 소스코드로부터 머신코드를 얻기 위해서는 이러한 번역을 수행하는 알고리즘 혹은 소프트웨어가 필요하다 = 컴파일러

 

- 터미널에 $가 깜빡거린다. -> clang을 입력 (=코드를 컴파일하는 프로그램의 이름)

=> a.out이라는 머신코드가 생성된다.

=> ./a.out

=> 터미널에 ls를 입력했을 때 파일명 뒤에 *가 있다는 것은 머신코드, 즉 실행할 수 있다는 것을 의미한다.

 

참고) 왜 저는 줄바꿈 할때 \(백슬래시)가 ₩(원화)로 보이는 것이죠?
-> 해당 문제는 '한글 윈도우' 운영체제에서만 생기는 현상입니다.
한글 윈도우에서는 \를 ₩로 표시를 해주기 때문입니다. 따라서 ₩로 표시가 되어도 문제 없습니다.

 

2) 문자열

- 쌍따옴표 안에 들어간 0개 이상의 문자 배열

- 변수를 담을 때, 변수가 저장하는 데이터의 종류를 아주 정확하게 명시해줘야 합니다. (what type of value)

- 형식지정자 placeholder 를 선언해줘야 함

- 라이브러리를 사용할 땐 두가지를 명심해야 한다.

1. 소스코드에서는 컴퓨터에게 라이브러리를 추가하라고 해야 함.

= 두 코드가 한 프로그램으로 실행될 수 있도록 컴퓨터에게 라이브러리를 소스코드에 추가하도록 해야 함.

- terminal

make {program_name}

-> 프로그램을 만드는 명령어, 리눅스 운영체제에 있는 프로그램으로 Window나 Mac에도 있음.

 

4) 자료형, 형식 지정자, 연산자

데이터 타입

  • bool: 불리언 표현, (예) True, False, 1, 0, yes, no
  • char: 문자 하나 (예) 'a', 'Z', '?'
  • string: 문자열
  • int: 특정 크기 또는 특정 비트까지의 정수 (예) 5, 28, -3, 0
  • long: 더 큰 크기의 정수
  • float: 부동소수점을 갖는 실수 (예) 3.14, 0.0, -28.56
  • double: 부동소수점을 포함한 실수

형식 지정자

printf 함수에서는 각 데이터 타입을 위한 형식 지정자를 사용할 수 있습니다.

  • %c : char
  • %f : float, double
  • %i : int
  • %li : long
  • %s : string

* 소수 floating point

C언어에서 형식 지정자를 %f로만 지정했을 때 소숫점이 6자리가 나오는 이유?

=> %f 에 대한 기본 자릿수가 6이기 때문이다. 6 digits of percision

 

5) 사용자 정의 함수, 중첩 루프

parity: 홀수 odd 인지 짝수 even 인지 확인해주는 프로그램

#include <stdio.h>

int cough(int n); // 이와 같이 main 함수 위에 함수를 명시해놓으면 사용할 수 있다.

int main(void)
{
	cough(3);
}

int cough(int n)
{
	for(int = 0; i < 3; i++)
    {
    	printf("cough\n");
    }
}

 

세부정의 implementation details

 

'basic' 카테고리의 다른 글

This is CS50 (4) Algorithms  (0) 2024.06.06
This is CS50 (3) Arrays  (0) 2024.06.03
심화-캐리와 오버플로우의 차이점  (1) 2024.05.30
This is CS 50 (1) Computational Thinking, Scratch  (0) 2024.05.28
OAuth 2.0 에 관하여  (0) 2024.05.20