728x90

분류 전체보기 518

13. clang_ex_FileIO2

#include #include #include //자기 참조 구조체 (연결리스트), 구조체 typedef struct TNodeData { charm_strName[20]; intm_iAge; charm_strAddress[50]; TNodeData*pNext; }TNode; char*GetName(TNode* pNode, int iIndex) { return pNode[iIndex].m_strName; } intGetAge(TNode* pNode, int iIndex) { return pNode[iIndex].m_iAge; } char*GetAddress(TNode* pNode, int iIndex) { return pNode[iIndex].m_strAddress; } //블록단위 입출력 int ma..

12. clang_ex_FileIO1

#include #include #include //파일을 읽어들여 16진수와 문자로 출력한다. void DrawHexAscii(char* file) { unsigned char munja[10]; FILE* fp; int i, j, n = 0; fopen_s(&fp, file, "rb"); if (fp == NULL) { puts("파일이 존재하지 않습니다. \n"); return; } while (!feof(fp)) { printf("\n%05d : ", ftell(fp)); for (i = 0; i < 10; i++) { munja[i] = fgetc(fp); printf("%02X", munja[i]); if (feof(fp)) { break; } } printf(" "); for (j = 0; ..

9. clang_ex_union

#include union TData { char a; int b; double c; }; //비트필드 구조체 struct TBool { unsigned char a : 1; unsigned char b : 1; unsigned char c : 1; unsigned char d : 1; unsigned char e : 1; unsigned char f : 1; unsigned char g : 1; unsigned char h : 1; }; //비트필드구조체와 공용체 typedef struct { union { struct { unsigned long Zone : 28; unsigned long Level : 4; }; unsigned long Value; }; } DATA, *PDATA; typedef ..

7. clang_ex_MagicSquare

#include #include #include #define USE_ARRAY #undef USE_ARRAY #ifdef USE_ARRAY int Data[20][20]; //크기가 iSize인 마방진을 만든다. void MagicSquare(int iSize); int main() { int iSize; //마방진 입력 while (true) { printf("마방진의 크기를 3~19사이의 홀수로 입력하세요 :"); scanf_s("%d", &iSize); if (iSize >= 3 && iSize < 20) { break; } } //마방진 계산 MagicSquare(iSize); //마방진 출력 for (int iRow = 0; iRow < iSize; iRow++) { for (int jCol ..

6. clang_ex_HanoiTower

#include void HanoiTab(int n, char from, char temp, char to); void HanoiTower(int n, char from, char temp, char to); int main() { int n; printf("원반 갯수를 입력하세요 : "); scanf_s("%d", &n); HanoiTab(n, 'A', 'B', 'C'); } // 1. 디스크는 한번에 하나씩 옮겨야 한다. // 2. 위에 놓인 디스크는 아래쪽의 디스크보다 클 수 없다. void HanoiTab(int n, char from, char temp, char to) { if (n > 0) { //a를 c를 임시저장소로 활용하여 b로 놓는다. HanoiTab(n - 1, from, to, t..

5. Clang_ex_Diamond

#include void DrawChar(char cValue); void DrawStar(int iMaxRow, int iMaxColumn, int iStartColumn, int iDir); void DrawDiamond(int iNunRow, int iNumCol); int main() { int iNumColumn = 3;//행(가로줄,위에서 아래로 셈) = Column int iNumRow = iNumColumn;//열(세로줄,좌에서 우로 셈 ) = Row //1)직접 제어문을 사용하여 출력 for (int row = 0; row < iNumRow; row++) { for (int col = 0; col < iNumColumn - row; col++) { printf(" "); } for (in..

4. clang_ex_03

#include #include #include char* StringToAttach(const char* str1, const char* str2); int main() { char data[] = "K,G,C,A, game academy -33-"; size_t iDataSize = strlen(data) + 1; char *str1 = (char*)malloc(sizeof(char) * iDataSize); char str2[30]; { printf("========= 문자열 복사 ===========\n"); strcpy_s(str1, iDataSize, data); strncpy_s(str2, data, 4); // 뒤에 널문자를 자동으로 추가해줌 //strncpy(str2, data, 4); ..

반응형