수다닷컴

  • 해외여행
    • 괌
    • 태국
    • 유럽
    • 일본
    • 필리핀
    • 미국
    • 중국
    • 기타여행
    • 싱가폴
  • 건강
    • 다이어트
    • 당뇨
    • 헬스
    • 건강음식
    • 건강기타
  • 컴퓨터
    • 프로그램 개발일반
    • C언어
    • 비주얼베이직
  • 결혼생활
    • 출산/육아
    • 결혼준비
    • 엄마이야기방
  • 일상생활
    • 면접
    • 취업
    • 진로선택
  • 교육
    • 교육일반
    • 아이교육
    • 토익
    • 해외연수
    • 영어
  • 취미생활
    • 음악
    • 자전거
    • 수영
    • 바이크
    • 축구
  • 기타
    • 강아지
    • 제주도여행
    • 국내여행
    • 기타일상
    • 애플
    • 휴대폰관련
  • 프로그램 개발일반
  • C언어
  • 비주얼베이직

소스 분석좀 부탁드릴께요~!!

세찬

2023.04.01

이 소스는 경마 소스 입니다. 주석과 직접 짜진 않았찌만 소스 구성 및 설계 배경등 보고서하나 작성해주실분 쪽지 부탁드립니다. 꼭 사례하겠습니다....

#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);
}

신청하기





COMMENT

댓글을 입력해주세요. 비속어와 욕설은 삼가해주세요.

번호 제 목 글쓴이 날짜
2700562 함수포인터에서요 (7) 소심한여자 2025-07-06
2700530 전처리문 질문입니다. (1) 아놀드 2025-07-05
2700510 c언어를 어케하면 잘할수 있을까요.. 연연두 2025-07-05
2700484 두 개가 차이가 뭔지 알려주세요...(소수 찾는 프로그램) (2) 날위해 2025-07-05
2700426 인터넷 창 띄우는 질문이요 (1) 정훈 2025-07-04
2700400 원넓이를 계산이요 ㅜㅜ 천칭자리 2025-07-04
2700368 if에 관해서 질문이요... Orange 2025-07-04
2700339 이거 결과값이 왜이런건지.. (4) 그댸와나 2025-07-04
2700313 파일 읽어서 저장하는데 빈파일일 경우 문재가 발생하네요.. (2) 크나 2025-07-03
2700287 구조체 동적할당 연습을 하는데 오류가 뜹니다...(해결) (3) 아련나래 2025-07-03
2700264 문자와 숫자 동시에 입력??? 글고운 2025-07-03
2700236 txt파일로만 쓰고 읽게 하려면 어떻게 해야 하나요..?? (8) 미국녀 2025-07-03
2700211 전위 연산자 (2) 어른처럼 2025-07-02
2700183 C에서 파일이름을 받고, 그 파일의 사이즈를 출력해줘야하는데 내용이 출력이 안되네요 ;ㅅ; 피스케스 2025-07-02
2700150 꼭좀 도와주세요ㅠㅠㅠ 호습다 2025-07-02
2700095 연산문제...질문... 오빤테앵겨 2025-07-01
2700070 while문 , 3의배수 출력하는 프로그램좀 짜주세욤. 횃불 2025-07-01
2700041 초보인데요 ㅎ 배열안에 배열을 집어넣을수 있나요?? 헛장사 2025-07-01
2700012 배열// (1) 전갈자리 2025-07-01
2699895 무한루프에 빠집니다.!! 해결좀부탁드려요 (10) 선아 2025-06-30
<<  이전  1 2 3 4 5 6 7 8 9 10  다음  >>

수다닷컴 | 여러분과 함께하는 수다토크 커뮤니티 수다닷컴에 오신것을 환영합니다.
사업자등록번호 : 117-07-92748 상호 : 진달래여행사 대표자 : 명현재 서울시 강서구 방화동 890번지 푸르지오 107동 306호
copyright 2011 게시글 삭제 및 기타 문의 : clairacademy@naver.com