개인공부(113)
-
C언어 - 함수가 필요할 때
프로그램을 작성할땐 2가지를 신경써야한다. 1. 일반화라는 관점에서 프로그램이 여러가지의 경우에 대해서 쉽게 작동할수 있도록 개선해나가야 함. 2. 같은 기능이 여러번 나오면 안된다. (유지보수가 어렵기 때문) #define _CRT_SECURE_NO_WARNINGS #include #include #define WIDTH 20 #define NAME "Cho Yi Sak" #define ADDRESS "Seoul, Korea" void print_bar(int n_stars) { for (int i = 0; i < n_stars; i++) printf("*"); printf("\n"); } int main() { print_bar(WIDTH); printf("%s\n", NAME); printf("%s..
2020.11.10 -
C언어 - 표준 입출력 함수들
int main(){ int ch; //ch = getchar(); // buffer //putchar(ch); //while (ch != '\n')// 줄바꿈을 입력했다면 실행종료 while ((ch=getchar()) != '\n') { putchar(ch); //ch = getchar(); } putchar(ch); return 0; } 버퍼를 이용해서 한글자씩 처리하지 않는다. 출처 : 홍정모의 따라배우는 C언어
2020.11.10 -
C언어 - 배열과 런타임 에러
#define NUM_DAYS 365 int main() { char my_char[] = "Hello, World!"; int daily_temperature[NUM_DAYS]; // int[365] double stock_prices_history[NUM_DAYS];// double[365] printf("%zd\n", sizeof(stock_prices_history));// 2920 printf("%zd\n", sizeof(double) * NUM_DAYS);// 2920 double 사이즈의 메모리가 365개 printf("%zd\n", sizeof(stock_prices_history[0]));// 8 return 0; } int main() { int my_numbers[5]; // arra..
2020.11.10 -
C언어 - 반복문
int main() { const double speed = 1.0; const unsigned repeat_max = 10; double dt = 1.0; double time = 0.0;//Elapsed time double dist = 0.0;// Distance for (unsigned i = 0; i < repeat_max; ++i) { dist += speed * dt; time += dt; printf("Elapsed time = %.10fs, Distance = %.10fm\n", time, dist); dt *= 0.5; } return 0; } 제논의 역설 int main() { int password; int real = 1234; do { printf("please enter you..
2020.11.10 -
C언어 - 의사코드 Pseudocode
인간의 언어를 사용해서 코드와 비슷한 내용을 이해하기 쉽도록 표현하는 의사코드. int num, sum = 0; //sum을 0으로 초기화한다. int status; printf("Enter an integer (q to quit) : "); // 사용자에게 안내한다. status = scanf("%d", &num); // 사용자에게 입력을 받는다. while( status == 1) // 그 입력이 정수인 동안에는 { sum = sum + num;// 그 입력을 sum에 더한다. printf("Enter next integer (q to quit) : "); // 사용자에게 안내한다. status = scanf("%d", &num);// 사용자에게 다음번 입력을 받는다 } printf("Sum = %d..
2020.11.09 -
C언어 - 자료형 변환 (Type Conversions)
long double > double > float unsigned long long, long long unsigned long, long unsigned, int short int, unsigned short int signed char, char, unsigned char _Bool Ref: Google 'Integer conversion rank' 실수가 정수보다 순위가 높다. d = f + 1.234; 계산하기 위해 f를 double로 바꾸어 계산후 d에 대입 f = f + 1.234; 이 expression의 값이 double 이다. f+ double이 되기 때문에 값이 double인데 다시 f에 넣으려니 warning이 뜬다. // casting operators int i; float f;..
2020.11.09