https://www.boostcourse.org/cs112/joinLectures/41307
David J. Malan (데이비드 J. 말란)의 <모두를 위한 컴퓨터 과학(CS50 2019)> 수강 내용
※ 터미털 정리: clear or Ctrl+I (궁금했는데!! ㅋㅋ)
학습목표
컴파일의 네 단계
키워드
- 컴파일링
- 어셈블링
- 링킹
컴파일(compile)
학습목표
디버깅
키워드
- 디버깅
- help50
- debug50
버그, 디버깅
학습목표
코드의 정확성과 디자인을 관리하는 방법
키워드
- check50
- style50
- 고무오리
학습목표
배열을 정의하고 사용하는 방법
키워드
- 배열
- 전역변수
#include <cs50.h>
#include <stdio.h>
float average(int length, int array[]);
int main(void)
{
// 사용자가 점수 갯수 입력
int n = get_int("Scores: ");
//
int scores[n];
for (int i = 0; i<n; i++)
{
scores[i]=get_int("Score %i:", i+1);
}
// 평균
print("Average: %.1f\n", average(n, scores));
}
//평균을 계산하는 함수
float average(int length, int array[])
{
int sum = 0;
for (int i = 0; i < length; i++)
{
sum += array[i];
}
return (float) sum / (float) length;
}
학습목표
문자열이 C에서 정의되는 방식과 메모리에 저장되는 방식
키워드
- 문자
- 문자열
문자열: char값들의 배열. 마지막 인덱스는 널로 끝남.
학습목표
문자열을 탐색하고 일부 문자를 수정하는 코드를 구현
키워드
- strlen
- toupper
#include <cs50.h>
#include <ctype.h>
#include <stdio.h>
#include <string.h>
int main(void)
{
string s = get_string("Before: ");
printf("After: ");
for (int i = 0, n = strlen(s); i < n; i++)
{
printf("%c", toupper(s[i]));
}
printf("\n");
}
학습목표
명령행 인자를 받는 프로그램을 C로 작성한다.
키워드
- 명령행 인자
- argv
- argc
#include <cs50.h>
#include <stdio.h>
int main(int argc, string argv[])
{
if (argc == 2)
{
printf("hello, %s\n", argv[1]);
}
else
{
printf("hello, world\n");
}
}