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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 | #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <windows.h> // WinApi header void design( char (*a)[70], int f_maxr, int f_maxc, int dr, int dc); void output( char (*a)[70], int f_maxr, int f_maxc, int *cnt); int setcolor( int k); int setsim( char (*a)[70], char (*p)[3], int x, int y, int k, int *cnt); int Removesim( char (*a)[70], int x, int y); int main( void ) { int oldk=0; int cnt=0; int i=0; int j; int maxr=20; int maxc=70; char ch=0; int r=10, c=35; char a[20][70]; int x=10, y=10, k=0; char p[4][3]={ "▲" , "▼" , "◀" , "▶" }; design(a, maxr, maxc, r, c); while (1){ //y=(70+y)%70; //x=(20+x)%20; setsim(a, p, x, y, k, &cnt); if (y>=66) y=66; if (y<=4) y=4; if (x>=18) x=17; if (x<=2) x=2; output(a, maxr, maxc, &cnt); Removesim(a, x, y); ch=getch( ); if (ch==-32) ch=getch(); oldk=k; switch (ch){ case 72: k=0; break ; case 80: k=1; break ; case 75: k=2; break ; case 77: k=3; break ; } if (oldk==k){ switch (ch){ case 72: x--; break ; case 80: x++; break ; case 75: y=y-2; break ; case 77: y=y+2; break ; } //switch } //if setcolor(7); system ( "cls" ); } return 0; } void output( char (*a)[70], int f_maxr, int f_maxc, int *cnt){ //출력 int i,j; int y; int u; for (i=0; i<f_maxr; i++){ for (j=0; j<f_maxc; j++){ setcolor((i%15)+1); printf ( "%c" ,a[i][j]); } printf ( "\n" ); } printf ( "cnt : %d" ,*cnt); } int setcolor( int k) { HANDLE hConsole; //핸들러 정의 hConsole = GetStdHandle(STD_OUTPUT_HANDLE); //핸들러 생성 SetConsoleTextAttribute(hConsole, k); //값 셋팅 k 값에 맞는 색상이 출력) } void design( char (*a)[70], int f_maxr, int f_maxc, int dr, int dc){ //디자인 int i,j; for (i=0; i<f_maxr; i++){ for (j=0; j<f_maxc; j++){ a[i][j]= 'A' ; if (i==0) a[i][j]= 'A' ; if (j==0 || j==f_maxc-1) a[i][j]= 'A' ; if (i==f_maxr-1) a[i][j]= 'A' ; } } } int setsim( char (*a)[70], char (*p)[3], int x, int y, int k, int *cnt) { if (a[x][y]== 'A' ) *cnt=*cnt+2; a[x][y]=p[k][0]; a[x][y+1]=p[k][1]; } int Removesim( char (*a)[70], int x, int y) { a[x][y]= ' ' ; a[x][y+1]= ' ' ; return 0; } |
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
공지 | 글쓰기는 하루 5개, 댓글은 10개만 가능합니다. | 좋은아빠되기 | 2019.02.15 | 675 |
공지 | 키보드 화살표값 출력 | 좋은아빠되기 | 2016.11.19 | 1442 |
공지 | 원하는 좌표에 값 출력하기 | 좋은아빠되기 | 2016.11.19 | 2776 |
공지 |
Python(파이썬) 학습 자료 PDF
1 ![]() |
좋은아빠되기 | 2014.12.10 | 11105 |
공지 | dev C++ 텍스트 색상변경 WinApi사용(textcolor 대용) | 좋은아빠되기 | 2014.06.07 | 5099 |
공지 | DEV-C++ 기본 코드 | 좋은아빠되기 | 2013.06.19 | 8886 |
공지 | 무료 C++ 컴파일러(윈도우용) DEV-C++ | 좋은아빠되기 | 2013.06.18 | 19371 |
공지 | 이클립스 C++ 설치 파일들 | 좋은아빠되기 | 2013.06.18 | 38257 |
248 | n/2 n-1 더해서 배열에넣고 원하는 수 빼기(승민) | 승민 | 2016.08.20 | 134 |
247 | n자리수 각자리수 제곱해서 더하기(승민) | 승민 | 2016.08.20 | 927 |
246 | 홀수면 n수까지 홀수 출력 짝수면 n수까지 짝수 출력(승민) | 승민 | 2016.08.20 | 482 |
245 | n개수의 주사위 돌리기(승민) | 승민 | 2016.08.20 | 457 |
244 | 주사위(승민) | 승민 | 2016.08.20 | 185 |
243 | 세자리수 곱해서 각자리수 곱하기(승민) | 승민 | 2016.08.27 | 1304 |
242 | 포인트 | 승민 | 2016.09.10 | 222 |
241 | 오른쪽으로돌려쓰기 | 선우 | 2016.10.29 | 169 |
240 | 대덕마고 | 승민 | 2016.10.29 | 182 |
239 | 10/29문자열 | 선우 | 2016.10.29 | 147 |
238 | 알파벳 배열2-1 | 승민 | 2016.10.29 | 205 |
237 | 테두리(승민) | 승민 | 2016.11.12 | 172 |
236 | 테두리(승민) | 승민 | 2016.11.12 | 185 |
235 | dd | 선우 | 2016.11.19 | 99 |
» | dd | 승민 | 2016.11.19 | 132 |
233 | 졸업문제 | 선우 | 2016.11.19 | 304 |
232 | ㅇㅇㅇ | 선우 | 2016.11.19 | 133 |
231 | 주사위 굴리기 | 갓초딩 | 2017.03.25 | 1432 |