본문 바로가기

C C++ language

(24)
C언어 두 정수 입력수 빼서 출력하기 (백준 1001) 읽어주셔서 감사합니다. 오늘은 간단하게 두 정수를 입력받은 뒤, 두 수를 뺀 다음 출력하는 방법에 대해 알아보겠습니다. 코드 지난번과 같이 간단한 코드입니다. 굳이 어려운걸 따지자면 scanf정도가 되겠네요. #define _CRT_SECURE_NO_WARNINGS // 최근에 몇몇 IDE에서 scanf를 쓰면 에러가 나더군요... 그곳에 대한 대응방안입니다. #include int main(void) { int a, b; int result; scanf("%d %d", &a, &b); // a와 b를 차례로 입력받음 result = a - b; //result에 a + b의 값을 대입 printf("%d\n", result); //result 값 출력 return 0; //프로그램 종료 } 사용방법 입..
C언어 두 정수 입력 후 더하여 출력하기 읽어주셔서 감사합니다. 오늘은 간단하게 두 정수를 입력받은 뒤, 두 수를 더하여 출력하는 방법에 대해 알아보겠습니다. 이건 제가 학교 동아리에서 C언어 입문자들 가르칠때 냈던 숙젠데, 다른 분들보 필요할때 소스 참고하지라고 이곳에 얼립니다. 코드 보통 이 문제를 푸는 단계가 scanf바로 배우고 나서인데요,간단합니다. 배우셨던 printf, scanf정의를 떠올리시며 코드를 보면 금방 이해하실 수 있을 겁니다. #define _CRT_SECURE_NO_WARNINGS // 최근에 몇몇 IDE에서 scanf를 쓰면 에러가 나더군요... 그곳에 대한 대응방안입니다. #include int main(void) { int a, b; int result; printf("input two numbers : "); ..
C언어 배열의 순서 바꿔서 출력하기 (with source) 읽어주셔서 감사합니다. 오늘은 배열을 입력받은 뒤, 입력받은 배열을 거꾸로 출력하는 방법을 알아보겠습니다. 이러한 프로그램을 구현하는 방법은 상당히 여러개가 존재하는데, 오늘은 대표적인 두 가지 방법으로 구현할 예정입니다. 코드1 이 코드는 배열의 순서 자체를 바꾸는 코드입니다. 2번째로 나올 코드보다 조금 복잡한 코드이죠. 추가적으로 이 코드는 n이 100초과면 제대로 작동하지 않는데, 만약 n이 100 이상일때로 작동하는 코드를 원한다면, 아래 접은 글을 펴보시면 적절한 코드가 나올 겁니다. 아니면 arr대괄호 안의 수를 자신이 원하는 만큼 늘려도 됩니다. 더보기 #define _CRT_SECURE_NO_WARNINGS #include #include int main(void) { int n, c; ..
C언어 1부터 100까지의 소수 탐색기의 구현 (with source) 읽어주셔서 감사합니다. 지난 블로그의 글을 응용해서 제목과 같이 1 ~ 100까지의 소수를 탐색하는 프로그램을 만들어 보겠습니다. (참고로 이 블로그는 최대한 이해가 쉽도록 쓰는 글입니다. 고로 프로그램의 성능은 떨어집니다. 고성능의 소수 탐색기가 필요한 분들은 아래의 제 signature블로그 글을 참고해주세요) https://kms-program.tistory.com/12 KMS04 : C++ 소수탐색 프로그램 Ver3 (source) 안녕하세요 tomskang입니다. 오늘은 지난번에 만든 소수 탐색기를 업그레이드 시켜보았는데요 이번에 확실하게 프로그래밍을 각잡고 해서, 최적화되었다 할 수는 없지만, 여러 방면으로 지금까지 kms-program.tistory.com 코드 오늘은 변 내용이 없고, 사실..
C언어 십진법 이진법 변환기 구현하는 방법 [with source] 읽어주셔서 감사합니다. 오늘은 십진법을 이진법으로 변환하는 프로그램을 구현해보겠습니다. (참고로 이 블로그는 초보자의 입장에서, 이해가 쉽도록 쓰는 글입니다. 고로 이진법 변환기의 성능은 떨어집니다.) 구조 이 프로그램은 아래 블로그의 진법 변환 방법 중 4번에 해당하는 방법을 통해 진법 변환을 할 예정입니다. 컴퓨터언어로 진법 변환을 배울때 아마 이 방법을 제일 먼저 배우실 꺼에요 + 그냥 "이진법 변환 방법"지면 첫번째로 뜬 블로그를 가져온 겁니다. blog.naver.com/yskim004/222130791544 025. 십진법 숫자의 2진법 변환 방법 025. 십진법 숫자의 2진법 변환 방법진법 변환은 곱셈과 나눗셈(지수)의 원리를 활용한 것 우리가 일상적으... blog.naver.com 코드 ..
C언어 소수 판단 하는 방법 [with source] 읽어주셔서 감사합니다. 오늘은 C언어로 입력받은 문자를 아스키 코드로 출력하는 방법을 알아보도록 하겠습니다. 코드1 효율적이라 할 수는 없지만 이해가 빠른 코드 코드 목적에 맞게 주석을 작성했습니다. #define _CRT_SECURE_NO_WARNINGS #include #define TRUE1 #define FALSE0 int isPrime(int n) { //소수판단 함수 int i; if (n == 1) { return FALSE; } //만약 수가 1이면, false 출력 for (i = 2; i < n; i++) { if ((n % i) == 0) { return FALSE; } // 2 ~ n-1까지의 수 중 약수가 존재하면 false 출력 } return TRUE; //약수가 없다면 tru..
C언어 계단모양으로 별 출력하는 방법 [with source] 읽어주셔서 감사합니다. 오늘은 C언어로 입력받은 문자를 아스키 코드로 출력하는 방법을 알아보도록 하겠습니다. 코드구성 코드를 구성하기 전에 계단의 구조를 한번 봅시다. * ** *** **** 이 4단 계단에서는 1단에서는 *이 한개, 2단에서는 *이 2개...4단에는 *이 4개 있는 구조입니다. 즉, 단 수(줄 수)가 늘어날수록 *의 개수도 한개식 늘어나는 구죠이죠. 이 구조에 따라, 코드는 아래와 같은 방식으로 구성되어있습니다. 계단의 단수 입력 : n 1 ~ n까지 변수 i값을 늘려가며 출력 '*'을 i개 출력하고 줄을 바꿈 프로그램 종료 코드 간단한 코드입니다. 사용하실 분들은 Ctrl + C, Ctrl + V로 사용하시면 됩니다. #define _CRT_SECURE_NO_WARNINGS #inc..
#define _CRT_SECURE_NO_WARNINGS 사용하는 이유 안녕하세요 오늘은 언제부턴가 나타나게 된 이 녀석에 대해 알아보고자 합니다. 이 프로그램을 한번 보죠 #include int main(void) { int a; scanf("%d", &a); printf("%d\n", a); return 0; } 너무나 평범한 프로그램입니다. 하지만 이 프로그램을 visual studio에서 실행하고자 하면, 다음과 같은 에러가 발생합니다. 이건 왜 발생할까요? 어떻게 해결할까요? 지금부터 시작합니다. 1. 왜 나왔는가? 이 에러는 visual studio에서 주로 발생하는 에러입니다. visual studio 2005부터, scanf, fopen, strcpy같은 함수를 사용하면 보안에 문제가 있다는 이유로 에러가 떴었죠, 그래도 visual studio 2019 전 ..
C언어 입력받은 글자또는 문자 출력 방법 오늘은 C언어의 문자, 숫자를 입력, 출력을 받는 방법을 알아보겠습니다. 참고로 #define _CRT_SECURE_NO_WARNINGS는 visual studio에서 scanf를 사용하면 에러가 나기에 사용합니다. 만약 visual studio에서 이 소스를 사용하지 않을 것이라면, 이 부분을 제거하셔도 문제가 없습니다. 이와 관련되 자세한 내용은 다음주에 다루겠습니다. 1. 숫자를 출력 입력 : 아무 숫자(정수) + enter 출력 : "input [입력한 숫자] " 를 출력 종료 : -1이 입력되면 프로그램을 종료 #define _CRT_SECURE_NO_WARNINGS #include int main(void) { int a; printf("program start\n"); while (1) { ..
C언어 " 큰따음표와 ' 작은 따음표의 차이점 안녕하세요 오늘은 간단하게 C언어에서 큰따음표와 작음따음표가 갖는 차이점을 다루어보도록 하겠습니다. C언어의 큰따음표와 작은따음표의 가장 큰 차이는 "문자"와 "문자열"의 차이에 있습니다. 구체적으로 한번 알아볼까요? C언어에서, 'a'라는 문자는 한글에서의 가와 비슷합니다. 한글 문자를 나열한 가, 나, 다...에서의 가와같이, C언어세어 'a'는 단순 알파벳 문자, 기호의 의미를 지닙니다. (추가적으로 'a'는 그 기호가 뜻하는 숫자(아스키 코드)인 97과 의미가 같습니다.) C언어에서, "a"라는 문자열은, 문장과 비슷한 의미를 지닙니다. 생활에서 사용하는 문장과 다르게 실질적 의미를 지니지 않을 수는 있어도, 문자가 여러개 합쳐져 만들어진 문자열이라는 것입니다. 이 "a"라는 문자열도 'a'라는 ..