#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 | 572 |
공지 | 키보드 화살표값 출력 | 좋은아빠되기 | 2016.11.19 | 1350 |
공지 | 원하는 좌표에 값 출력하기 | 좋은아빠되기 | 2016.11.19 | 2664 |
공지 | Python(파이썬) 학습 자료 PDF 1 | 좋은아빠되기 | 2014.12.10 | 10731 |
공지 | dev C++ 텍스트 색상변경 WinApi사용(textcolor 대용) | 좋은아빠되기 | 2014.06.07 | 4991 |
공지 | DEV-C++ 기본 코드 | 좋은아빠되기 | 2013.06.19 | 8614 |
공지 | 무료 C++ 컴파일러(윈도우용) DEV-C++ | 좋은아빠되기 | 2013.06.18 | 19241 |
공지 | 이클립스 C++ 설치 파일들 | 좋은아빠되기 | 2013.06.18 | 38134 |
430 | 정올 배열1 형성평가6 | 정승준 | 2018.09.15 | 172 |
429 | 정올 배열1 형성평가5 | 정승준 | 2018.09.08 | 88 |
428 | 정올 배열1 형성평가4 | 정승준 | 2018.09.08 | 180 |
427 | 정올 배열1 형성평가3 | 정승준 | 2018.09.08 | 77 |
426 | 정올 배열1 형성평가2 | 정승준 | 2018.09.08 | 90 |
425 | 정올 배열1 형성평가1 | 정승준 | 2018.09.08 | 118 |
424 | 정올 배열1 자가진단9(반대) | 정승준 | 2018.09.08 | 68 |
423 | 정올 배열1 자가진단9(반대) | 정승준 | 2018.10.13 | 74 |
422 | 정올 배열1 자가진단9 | 정승준 | 2018.09.08 | 190 |
421 | 정올 배열1 자가진단9 | 정승준 | 2018.10.13 | 93 |
420 | 정올 배열1 자가진단8 | 정승준 | 2018.10.13 | 81 |
419 | 정올 배열1 자가진단8 | 정승준 | 2018.09.03 | 98 |
418 | 정올 배열1 자가진단7 | 정승준 | 2018.09.03 | 125 |
417 | 정올 배열1 자가진단7 | 정승준 | 2018.10.13 | 91 |
416 | 정올 배열1 자가진단6(반대) | 정승준 | 2018.10.13 | 82 |
415 | 정올 배열1 자가진단6 | 정승준 | 2018.09.01 | 71 |
414 | 정올 배열1 자가진단6 | 정승준 | 2018.10.13 | 97 |
413 | 정올 배열1 자가진단5 | 정승준 | 2018.09.01 | 108 |
412 | 정올 배열1 자가진단4 | 정승준 | 2018.09.01 | 148 |
411 | 정올 배열1 자가진단4 | 정승준 | 2018.10.13 | 81 |