Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- mvwin
- iptables
- 취약점
- 풀이
- LOB
- edge trigger
- .net core 7
- packet filter
- C언어
- vtable
- DOCKER-USER
- level trigger
- Docker
- BOF
- ioctl
- .nret core 배포
- cbpf
- epoll
- NAPT
- 어셈블리어
- packet flow
- epoll_wait
- rfc5508
- Compiler
- wrefresh
- ncurses
- architecture
- doupdate
- wnourefresh
- REDIS
Archives
- Today
- Total
Tuuna Computer Science
[C 언어]codeup문제 : 설탕 과자 뽑기 본문
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 | #include <stdio.h> /* 바둑판은 배열로 세팅해서 막대가 있는곳은 1로 한다. 시작점을 두고 바둑판과 0(가로), 1(세로)에따라 바뀐다. 가로와 세로를 조건문으로 두자 ! 배열은 0부터하므로 값을 설정해서 0부터 받게하자 */ int w, h; int badook[100][100]; //배열만 선언, 입력받아서 int stick;//막대의 개수 int stick_len; //막대의 길이 int x;//좌표 (x=w) int y;//좌표 (y=h) int direct;//방향 int get_stick(); void start(); void pan(int w, int h); int main(void) { start(); pan(w,h); return 0; } void pan(int w, int h) //막대기를 입력하고 다시 출력해야 된다. { puts("============================"); //printf("%d", w); //printf("%d", h); int i, j; for(i=0;i<w;i++) { for(j=0;j<h;j++) { if(badook[i][j]==0) { printf("%d ",badook[i][j]); } else if(badook[i][j]== 1) { printf("%d ",badook[i][j]); } } printf("\n"); } i = 0; j = 0; } void start() //시작 함수 2 0 1 1 (길이 가로 x = 1, y = 1) { puts("생성할 바둑판의 가로와 세로의 길이를 입력하시오 : "); scanf("%d %d",&w, &h); //판의 크기를 설정 pan(w,h); stick=get_stick(); //막대의 개수를 반환한다. int i; int a;//배열의 길이를 늘릴 a : 세로 int b;//배열의 길이를 늘릴 b : 가로 for(i=1;i<=stick;i++) { printf("막대기의 길이, 방향, 좌표(x), 좌표(y)를 입력하시오"); scanf("%d %d %d %d",&stick_len,&direct,&x, &y); x-=1; y-=1; if(x>=0 && x<=w && y>=0 && y<=h) //좌표 확인 { if(direct==1)//세로 {//[val][] for(a=0;a<stick_len;a++) //세로로 늘어남 { badook[y][x] = 1; y+=1; } } else if(direct==0)//가로 {//[][val] for(b=0;b<stick_len;b++) //가로로 늘어남 { badook[y][x] = 1; x+=1; } } } else { puts("NO...out door!"); } } } int get_stick() { printf("놓을 막대의 개수를 입력하시오 : "); scanf("%d", &stick); if(1<=stick && 10>= stick) { return stick; } else { puts("NO NO..."); return -1; } } | cs |
'C language' 카테고리의 다른 글
C언로 만드는 RPG게임 (1) | 2018.06.23 |
---|---|
포인터와 배열의 차이 (어셈코드) (0) | 2018.06.09 |
[C 언어]인자전달의 기본 방식 (0) | 2018.05.02 |
[C 언어] 입력 버퍼 지우기 (0) | 2018.04.24 |
[C 언어] 대문자를 소문자로 , 소문자를 대문자로 (0) | 2018.04.24 |
Comments