코딩 | 개념 정리/C

이번 포스팅에서는 제곱수를 구하는 라이브러리로 pow()가 있지만, 이를 순환함수를 활용해서 직접 만들어보았습니다. #define _CRT_SECURE_NO_WARNINGS #include int power(int num1, int num2); int main(void) { int num1, num2; printf("밑수: "); scanf("%d", &num1); printf("지수: "); scanf("%d", &num2); printf("%d^%d = %d", num1, num2, power(num1, num2)); return 0; } int power(int num1, int num2) { if (num2
이번 포스팅에서는 1부터 n까지 합을 구하는 코드를 작성해보았습니다. 반복문을 통해 구현도 가능하나, 이번 코드에서는 순환함수를 활용했습니다. #define _CRT_SECURE_NO_WARNINGS #include int sum(num); // 순환 덧셈 함수 int main(void) { int num; printf("정수를 입력하시오: "); scanf("%d", &num); printf("1부터 %d까지의 합=%d",num, sum(num)); return 0; } int sum(num) { if (num
이번 포스팅은 정적 변수를 활용해 난수를 생성하는 코드를 작성해보았습니다. 난수를 생성하는 방법은 저번 포스팅에도 다룬거와 같이 seed를 초기화 해주고 사용하였는데요. 이 경우 매번 seed를 초기화하지 않고, 맨 처음 한번만 초기화하도록 if문을 걸어주었습니다. 여기서 조건이 되는 변수의 실행횟수를 나타내는 count 변수를 정적 변수로 선언함으로써 해당 값이 0으로 초기화된 이후에는 계속 증가하도록 하였습니다. #define _CRT_SECURE_NO_WARNINGS #include #include #include void get_random(); // 난수 호출 함수 int main(void) { for (int i = 0; i < 5; i++) { get_random(); } return 0; ..
이번 포스팅에서는 난수를 생성할 때 사용하는 rand() 함수에 대해 다뤄보도록 하겠습니다. 기본적으로 rand() 라이브러리는 stdlib.h 에 포함되어 있으므로 시작할 때 #include #include 전처리기로 stdio.h와 stdlib.h를 같이 호출해주셔야 합니다. 난수를 생성하는 방법은 간단한데요. 아래와 같이 rand()라고만 작성해주시면 정수형 int의 출력범위에서 임의의 값을 하나 출력해줍니다. #include #include int main(void) { for(int i=0; i < 5; i++) { printf("%d\n", rand()); } return 0; } 여기서 난수 출력 범위를 수정하고 싶다면? rand() % 5 : 0~4 중에 한가지 수를 출력 rand() % ..
이번 포스팅은 로그인 관리시 자주 쓰이는 비밀번호 검사 코드를 작성해보았습니다. 로그인 성공시 바로 끝나지 않는 점, 호출 횟수에 반복문을 사용하지 않은 점이 거슬려서 추후 새로운 버전 업데이트 예정입니다. #define _CRT_SECURE_NO_WARNINGS #include //#include int check(); // 비밀번호 확인 함수 int main(void) { check(); check(); check(); check(); return 0; } int check() { int pass; // 입력 비밀번호 static int count = 0; // 비밀번호 횟수 카운트 static int password = 1234; // 설정 비밀번호 선언 count++; if (count > 3) ..
이번 포스팅은 주사위를 100번 던졌을 때, 각각의 면이 몇 번 나왔는지를 보여주는 코드를 작성해보았습니다. 각각의 면에 횟수를 기록해야 하므로 이는 정적 지역변수 static을 활용하여 구현하였습니다. 마지막으로 100회가 되면 for 반복문이 종료가 되고, 각각의 면 횟수가 출력되도록 하였습니다. #define _CRT_SECURE_NO_WARNINGS #include int get_dice_face(); // 주사위 난수 함수 int count_num1(); // 1번 횟수 int count_num2(); // 2번 횟수 int count_num3(); // 3번 횟수 int count_num4(); // 4번 횟수 int count_num5(); // 5번 횟수 int count_num6(); /..
이번 포스팅에서는 연산을 하는 동시에 연산이 몇 번 진행되었는가를 기억하는 계산기 코드를 작성해보았습니다. while문을 통해 무한루프 반복문을 작성해도 되지만, 이번에는 for문을 활용해 딱 10번만 연산이 진행되도록 하였습니다. 각각의 연산이 횟수를 기억해야 하므로, 이 부분은 static 정적 지역 변수를 통해 구현하였습니다. #define _CRT_SECURE_NO_WARNINGS #include int add(int x, int y); // 덧셈 함수 int sub(int x, int y); // 뺄셈 함수 int mul(int x, int y); // 곱셈 함수 int div(int x, int y); // 나눗셈 함수 int main(void) { char op; // 연산자_operatio..
scanf() 함수로 입력을 받고, printf() 함수로 출력을 하다보면, 종종 실수값을 출력하기 위해, %f와 %lf를 쓰곤합니다. 그런데, 매번 이 둘 중 무엇을 써야 되는가? 고민하게 되는 상황이 발생하여 정리를 해보았습니다. 변수 선언시 자료형 / 명칭 크기(비트) 크기(바이트) 값의 표현범위 정수형(부호 有) short 16bit 2byte -32,768 ~ 32,767 int 32bit 4byte -2,147,483,648 ~ 2,147,483,647 long 32bit 4byte -2,147,483,648 ~ 2,147,483,647 long long 64bit 8byte -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 정수형(부호 無) u..
PatienceLee
'코딩 | 개념 정리/C' 카테고리의 글 목록 (3 Page)