소스 분석좀 부탁드릴께요~!!
세찬
이 소스는 경마 소스 입니다. 주석과 직접 짜진 않았찌만 소스 구성 및 설계 배경등 보고서하나 작성해주실분 쪽지 부탁드립니다. 꼭 사례하겠습니다....
#include stdio.h
#include stdlib.h
#include time.h
#include conio.h
#define NUM 5
void burst(int a[NUM]);
int race(int a[NUM], int bet_h);
void rank(int b[NUM]);
void swap(int *p, int *q);
void start_screen();
int bet(int my_money);
void three_second ();
void print_3();
void print_2();
void print_1();
int main(void)
{
int my_money = 10000;
start_screen();
do{
my_money = bet(my_money);
}while(my_money 0);
printf(거지되따!);
printf(수고하셨습니다.);
printf(\n\n);
return 0;
}
void start_screen(){
printf( *************************************\n);
printf( ********* *********\n);
printf( ********* 경 마 게 임 *********\n);
printf( ********* *********\n);
printf( *************************************\n);
printf( 검은별 마사회\n\n);
printf(\n--- 저희 말들을 소개 하겠습니다 ---\n\n);
printf(1번마 하이페리온 ┏┓ˇ∋-\n);
printf(2번마 피닉스 ┌┐˚>-\n);
printf(3번마 적토마 ┎┒'≫-\n);
printf(4번마 뜨는 해 ┍┑`⊃-\n);
printf(5번마 만파식적 ┏┓º⊇-\n\n);
}
int bet(int money){
int i, bet_m = 1, bet_h, match=1,
winhorse, betting[NUM], im[NUM], myrule = 0;
srand(time(NULL));
for(i=0; i NUM; ++i) //배당율을 지정한다.
betting[i] = (rand() % 10) + 1;
printf( -----------------------------------------------------\n);
printf(| | 1번 | 2번 | 3번 | 4번 | 5번 |\n);
printf(| 배당률 | %3d | %3d | %3d | %3d | %3d |\n,betting[0], betting[1], betting[2], betting[3], betting[4]);
printf( -----------------------------------------------------\n);
printf(\n내 돈 %d원\n, money);
while(match 6){ //말번호를 잘못 입력하면 다시 입력
printf(몇번마 : );
scanf(%d, &bet_h);
match = bet_h;
match = match + 5; // 이렇게 함으로써 while문을 빠져나간다.
if(bet_h 5 || bet_h 1){
printf(다시 입력하십시오\n);
match = 1;
}
}
match = 1; //다음 while문에 쓰기 때문에 다시 1로 배정
while(match = money){ //배팅하려는돈이 자기돈보다 많으면 다시 입력
printf(배팅 액수 : );
scanf(%d, &bet_m);
match = bet_m;
match = match + money;
if(bet_m money){
printf(자신이 가진돈보다 많은 돈을 배팅하셨습니다.\n다시 입력하십시오\n);
match = money;
}
}
do{
myrule = 0;
for(i=0;iNUM;++i){
im[i] = rand()%2 + 1;
if (im[i] == 1)
myrule = myrule + 1;
}
}while(myrule == 0);
winhorse = race(&im[0], bet_h);
if(winhorse == 1){
money = money + (bet_m * betting[bet_h - 1]);
printf(%d원 벌음\n, bet_m * betting[bet_h - 1]);
}
else{
money = money - bet_m;
printf(%d원 잃음\n, bet_m);
}
return money;
}
int race(int a[NUM], int bet_h){
int i, j, z, count[NUM], final;
srand(time(NULL));
for(z=0;zNUM;++z)
count[z] = 0;
three_second();
printf(\a);
for (j = 0; j 69 ; ++j){
system(cls);
printf(①하이페리온\n);
for (i = rand()%2 ; ij ; i = i + a[0]){
printf( );
if(j == 68)
count[0] = count[0] + 1;
}
if (j 40)
printf(┏┓ˇ∋-);
else if (j % 2 == 0 )
printf(/ ̄\ˇ∋-);
else
printf(< ̄>ˇ∋-);
printf(\n\n);
printf(②피닉스\n);
for (i = rand()%3 ; ij ; i = i + a[1]){
printf( );
if(j == 68)
count[1] = count[1] + 1;
}
if (j 40)
printf(┌┐˚>-);
else if (j % 2 == 0)
printf(/ ̄\˚>-);
else
printf(< ̄>˚>-);
printf(\n\n);
printf(③적토마\n);
for (i = rand()%2 + 1 ; ij ; i = i + a[2]){
printf( );
if(j == 68)
count[2] = count[2] + 1;
}
if (j 40)
printf(┎┒'≫-);
else if (j % 2 == 0)
printf(/ ̄\'≫-);
else
printf(< ̄>'≫-);
printf(\n\n);
printf(④뜨는 해\n);
for (i = (rand() + 1) % 2 ; ij ; i = i + a[3]){
printf( );
if(j == 68)
count[3] = count[3] + 1;
}
if (j 40)
printf(┍┑`⊃-);
else if (j % 2 == 0)
printf(/ ̄\`⊃-);
else
printf(< ̄>`⊃-);
printf(\n\n);
printf(⑤만파식적\n);
for (i = rand()%3 + 1 ; ij ; i = i + a[4]){
printf( );
if(j == 68)
count[4] = count[4] + 1;
}
if (j 40)
printf(┏┓º⊇-);
else if (j % 2 == 0)
printf(/ ̄\º⊇-);
else
printf(< ̄>º⊇-);
printf(\n\n);
if (j == 45)
burst(&a[0]);
_sleep(200);
if (i=50)
_sleep(50 * a[0]);
}
final = count[bet_h - 1];
rank(&count[0]);
if(final == count[0])
return 1;
else
return 0;
}
void three_second (){
int first, last, result;
first = time(NULL);
last = time(NULL);
do{
result = (last - first);
switch (result) {
case 1 :
system(cls);
print_3();
break;
case 2 :
system(cls);
print_2();
break;
case 3 :
system(cls);
print_1();
break;
default :
break;
}
last = time(NULL);
}while (result !=4);
}
void rank(int b[NUM]){
int i, j;
for(i=0;iNUM-1;++i)
for(j=NUM-1;ji;--j)
if(b[j-1] b[j])
swap(&b[j-1], &b[j]);
}
void swap(int *p, int *q){
int tmp;
tmp = *p;
*p = *q;
*q = tmp;
}
void burst(int a[NUM]){
int free, i;
srand(time(NULL));
for(i = 0; i 10; ++i){
free = rand()%4;
swap(&a[free], &a[free+1]);
}
}
void print_3(){
printf(\n\n\n\n\n\n);
printf( ***************************\n);
printf( ******\n);
printf( ******\n);
printf( ******\n);
printf( ***************************\n);
printf( ******\n);
printf( ******\n);
printf( ******\n);
printf( ***************************\n);
}
void print_2(){
printf(\n\n\n\n\n\n);
printf( ***************************\n);
printf( ******\n);
printf( ******\n);
printf( ******\n);
printf( ***************************\n);
printf( ******\n);
printf( ******\n);
printf( ******\n);
printf( ***************************\n);
}
void print_1(){
printf(\n\n\n\n\n\n);
printf( ******\n);
printf( ******\n);
printf( ******\n);
printf( ******\n);
prin
printf( ******\n);
printf( ******\n);
printf( ******\n);
printf( ******\n);
printf( ******\n);
}
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2685477 | 소수점이하 출력하는거요 | 널위해 | 2025-02-18 |
2685449 | printf배우고있는데요 궁금한게있어요 (8) | 꽃큰 | 2025-02-18 |
2685393 | c언어 질문이요.... | 붕붕 | 2025-02-18 |
2685365 | 윈도우7에서 visual studio c++6.0 (1) | 빛길 | 2025-02-17 |
2685317 | segmentation fault가 나요 | 가람 | 2025-02-17 |
2685292 | 다중스택질문 | 올해1살 | 2025-02-17 |
2685231 | C언어와 닷넷에 대해서 질문!! (2) | 설아 | 2025-02-16 |
2685206 | VisualBasic 과 DEV++ 의 장단점과 만든 파일 호환 가능하나요? | 에드워드 | 2025-02-16 |
2685154 | 배열 크기조절 | 해찬솔 | 2025-02-15 |
2685124 | 수정이거 제가 뭐가 잘못한거죠 ? | 아이돌 | 2025-02-15 |
2685096 | 포인터의 고수분들 모두 보세요!! 제발 ㅠ_ㅠ 헷갈려헷갈려..갈려헷.. (7) | 치킨마루 | 2025-02-15 |
2685045 | 전처리기 질문 | 치에미 | 2025-02-14 |
2685016 | 오류 좀 확인해 주시면 감사하겠습니다 | 초코맛사탕 | 2025-02-14 |
2684917 | 알고리즘을 이용한 행렬의 전치// 문제다운 문제네요. | 뿡뿡 | 2025-02-13 |
2684868 | 양방향 연결리스트에서 실행도중 죽는 이유좀 찾아주세요. (2) | 예다움 | 2025-02-13 |
2684844 | 시계프로그램인데 도저히 모르겠어요ㅠ (1) | 비내리던날 | 2025-02-12 |
2684812 | 레포트좀도와주세요ㅠㅠ (2) | 갈매빛 | 2025-02-12 |
2684780 | 채팅창 흉내내보려고하는데요 ㅜ.ㅜ (1) | 바름 | 2025-02-12 |
2684729 | 내일 시험인데 메모리 그리는것좀 도와주세요 ㅠ (1) | 상처주지마 | 2025-02-11 |
2684701 | 버퍼 관련 질문 3가지 (이전거랑 달라요) | 한국녀 | 2025-02-11 |