일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 포인터
- C언어 파일입출력
- Google reCaptcha
- GUI
- HTML5
- 텍스트 파일 읽기
- URL 다운로드
- C언어
- SQL
- C언어 함수
- 날짜
- Oracle
- Naver SmartEditor
- C언어 메모리
- java
- Spring email
- 오라클
- C언어 변수
- placehoder
- TCP/IP 소켓
- 자바
- Spring google
- C언어 구조체
- jsp
- C언어 배열
- 구글 reCaptcha
- C언어 매크로
- gcc
- Vim
- 역순
- Today
- Total
목록C언어 (64)
easy software
15년 2월 16일에 작성한 구조체 카테고리의 'C언어 구조체 배열을 이용한 간단한 도서관리 프로그램' 에서 작성한 코드를 변경하겠습니다. 도서관리 프로그램은 길이가 3인 구조체 배열을 두고, 사용자로부터 책 3권의 정보를 입력받은 후 입력이 모두 끝나면 구조체에 저장된 내용을 출력하는 프로그램이었습니다. 그런데 이번글에서는 길이가 3인 구조체 포인터 배열을 두고, 사용자로부터 책 3권의 정보를 입력받은 후 구조체 변수를 동적으로 할당하는 형태입니다. 아래 그림과 같은 형태가 됩니다. 우선 코드를 보시고 제 설명을 보시면 조금더 이해가 빨리 될 것 같습니다. 그리고 동적할당으로 프로그램을 구현하면 어떠한 장점이 있는지도 설명드리겠습니다. #include #include void clearBuffer(vo..
수학시간이 아니므로 복소수(Complex Number)에 대한 설명은 제외하기로 하겠습니다. 단, 문제의 이해를 위해서 복소수의 덧셈과 곱셈공식은 보여드리겠습니다. 복소수의 덧셈 공식 : (a+bi) + (c+di) = (a+c) + (b+d)i 복소수의 곱셈 공식 : (a+bi) * (c+di) = ac - bd + bci + adi i는 허수입니다. 복소수에 대한 이해가 조금 부족하신 분들은 위의 공식에서 i를 제외하고 생각하셔도 무관합니다. 지금 보여드릴 프로그램에서는 복소수를 나타내는 구조체를 정의하고, 덧셈과 곱셈을 위한 함수를 정의했습니다. main함수에서는 두 개의 복소수를 사용자로부터 입력받아서 덧셈과 곱셈 연산의 결과를 출력합니다. 실행의 예 *1.2가 a이고, 2.4는 b, 1.1은 c..
뭐, 제목은 거창하게 지어놨는데 도서관리 프로그램이라고 하기 조금 어려운 수준입니다. 구조체의 멤버로는 저자, 제목, 페이지가 있습니다. main 함수에서는 총 3권의 책에 대한 정보를 입력받고, 입력이 끝나면 책의 정보를 출력해줍니다. #include void clearBuffer(void); //책의 정보를 저장하는 구조체 typedef struct book{ char author[10]; //저자 char name[30]; //제목 int page; //페이지 }Book; int main(void){ Book b[3]; //구조체 배열선언 printf("도서 정보 입력\n"); //사용자로부터 세 권의 책 정보를 입력받아 //구조체 배열에 저장 for (int i = 0; i < 3; i++){ p..
#define 지시자를 이용한 매크로를 작성할때, 매크로 몸체에 각종 연산자 및 띄어쓰기도 올 수 있습니다. 그러면 제목대로 삼항연산자를 포함한 매크로를 작성해 보겠습니다. #include //크기를 비교해주는 매크로 함수 #define MAX(x, y) x > y ? x : y int main(void){ int a, b; printf("같은 값은 비교할 수 없습니다. \n"); printf("두 개의 정수 입력 : "); scanf_s("%d %d", &a, &b); printf("%d이(가) 더 큰 수입니다. \n", MAX(a, b)); return 0; } 위의 코드는 사용자가 두개의 정수를 입력하면, 큰 값을 출력해주는 프로그램입니다. 작성된 매크로를 보면 매크로몸체가 삼항연산자로 작성되어 있..
매크로함수와 매크로상수를 작성하는 간단한 예제를 해보겠습니다. 1번 문제(매크로 함수) #include //덧셈기능의 매크로함수 #define Add(x, y, z) ((x) + (y) + (z)) //곱셈기능의 매크로함수 #define Mul(x, y, z) ((x) * (y) * (z)) int main(void){ int a, b, c; printf("세 개의 정수를 입력하세요 : \n"); scanf_s("%d %d %d", &a, &b, &c); //매크로함수 Add호출 printf("덧셈 결과 : %d \n", Add(a, b, c)); //매크로함수 Mul호출 printf("곱셈 결과 : %d \n", Mul(a, b, c)); return 0; } 위의 코드를 보면, Add와 Mul이라는 ..