| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 411 人关注过本帖
标题:一个小程序编译错误求解啊
只看楼主 加入收藏
qq740349116
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2014-4-25
结帖率:0
收藏
已结贴  问题点数:20 回复次数:6 
一个小程序编译错误求解啊
#include<stdio.h>
#include<conio.h>
#include<time.h>
#include<stdlib.h>
int a,b,c,bet,BetMoney,DetMoney;
int PlayerMoney=1000,DealerMoney=1000;



int GetAmount()
{
int BetMoney;
printf("您要押多少元宝(最少10个,最多100个)");
scanf("%d",&BetMoney);
if(BetMoney<10)
{
BetMoney=10;
}
if(BetMoney>100)
{
BetMoney=100;
}
return BetMoney;
}
void Throw() //Throw自定义的函数,用来掷出骰子的作用
{
printf("欢迎您体验赌博机,按键盘任意键掷出骰子");
getch();
srand(time(0)); //srand返回一个种子tiem调用当前时间
while (!kbhit()) //!逻辑非运算符返回0时会表示为真 kbhit函数为检查键盘是否有输入,没有则返回一个非0的值,否则返回为0
{
a=rand()%6+1; //返回一个随机数,并取这个随机数6的余数使控制在1—5之间,并且在加1,使骰子的点数在1-6,赋值给a
b=rand()%6+1;
c=rand()%6+1;
system("cls"); //调用系统的cmd执行清屏命令cls,system用来调用cmd的命令
//a,b,c代表三粒骰子
printf("骰子在转动:..........按键盘上的任意键来终止转动");
printf("第一粒骰子:%d\n第二粒骰子的点数:%d\n第三粒骰子的点数:%d\n",a,b,c);
}

}
int Judge(int a,int b,int c)
{
if(a==b&&a==c)
{
return 3;
}
if(a+b+c>11)
{
return 2;
}
else if(a+b+c<11)
{
return 1;
}
else
return 0;

}
void MoneyCalc()
{
if(Judge(a,b,c)==3);
{
BetMoney=BetMoney*10;
if(bet==3) //这是玩家赢的情况玩家加元宝,庄家减元宝
{

PlayerMoney+=BetMoney;
DealerMoney-=BetMoney;
printf("豹子,10赔率!您赢了庄家%d元宝,您现在总共%d元宝,庄家还剩%d元宝\n\n",BetMoney,PlayerMoney,DealerMoney);
}
else
{

PlayerMoney-=BetMoney;
DealerMoney+=BetMoney;
printf("豹子,10赔率!您输了%d元宝,您还剩%d元宝,庄家还剩%d元宝\n\n",BetMoney,PlayerMoney,DealerMoney);
}


}
else if(Judge(a,b,c)==2)
{
BetMoney=BetMoney*2;
if(bet==1) //代表用户买了大
{

PlayerMoney+=BetMoney;
DealerMoney-=BetMoney;
printf("大,2赔率!您赢了庄家%d元宝,您现在总共%d元宝,庄家还剩%d元宝\n\n",BetMoney,PlayerMoney,DealerMoney);
}
else if
{

PlayerMoney-=BetMoney;
DealerMoney+=BetMoney;
printf("大,2赔率!您输了%d元宝,您还剩%d元宝,庄家还剩%d元宝\n\n",BetMoney,PlayerMoney,DealerMoney);
}
}
else if(Judge(a,b,c)==1)
{
BetMoney=BetMoney*2;
if(bet==2) //代表用户买了小
{

PlayerMoney+=BetMoney;
DealerMoney-=BetMoney;
printf("小,2赔率!您赢了庄家%d元宝,您现在总共%d元宝,庄家还剩%d元宝\n\n",BetMoney,PlayerMoney,DealerMoney);
}
else
{

PlayerMoney-=BetMoney;
DealerMoney+=BetMoney;
printf("小,2赔率!您输了%d元宝,您还剩%d元宝,庄家还剩%d元宝\n\n",BetMoney,PlayerMoney,DealerMoney);
}
}
else if
printf("平局,您和庄家打成平手,您还剩%d元宝,庄家还剩%d元宝\n\n",PlayerMoney,DealerMoney);
}
int main()
{

bet=GetBet();
DetMoney=GetAmount();
Throw(); //掷出骰子
MoneyCalc();
while(1);
return 0;
}
搜索更多相关主题的帖子: include return 赌博机 键盘 
2014-04-25 19:32
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:10 
错误信息呢?

DO IT YOURSELF !
2014-04-25 19:34
kwxx
Rank: 8Rank: 8
等 级:蝙蝠侠
帖 子:309
专家分:913
注 册:2009-5-11
收藏
得分:10 
你的函数 GetBet(); 呢?
void MoneyCalc()函数中多了几个if.
2014-04-25 19:59
qq740349116
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2014-4-25
收藏
得分:0 
回复 2 楼 wp231957
Compiling...
1.c
F:\C程序\赌博机\1.c(117) : error C2181: illegal else without matching if
F:\C程序\赌博机\1.c(128) : error C2059: syntax error : '{'
F:\C程序\赌博机\1.c(135) : error C2059: syntax error : 'else'
F:\C程序\赌博机\1.c(153) : error C2059: syntax error : 'else'
F:\C程序\赌博机\1.c(155) : error C2059: syntax error : '}'
执行 cl.exe 时出错.
2014-04-25 20:01
qq740349116
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2014-4-25
收藏
得分:0 
回复 3 楼 kwxx
刚才复制掉了
int GetBet()
{
    int BetType;
    printf("\n  请选择下注方式(如果不选择这默认为1买大):");
    printf("1)买大  2)买小  3)买豹子\n");
    printf("请下注:");
    scanf("%d",&BetType);
    if( (BetType==1)||(BetType==2)||(BetType==3))
    {
        return BetType;
    }
    else
    {
        return 1;
    }
}
2014-04-25 20:02
kwxx
Rank: 8Rank: 8
等 级:蝙蝠侠
帖 子:309
专家分:913
注 册:2009-5-11
收藏
得分:0 
试着改了一下。倒挺好玩。
程序代码:
#include<stdio.h>
#include<conio.h>
#include<time.h>
#include<stdlib.h>
int a,b,c,bet,BetMoney,DetMoney;
int PlayerMoney=1000,DealerMoney=1000;

int GetBet()
{
    int BetType;

    printf("\n  请选择下注方式(如果不选择这默认为1买大):");
    printf("1)买大  2)买小  3)买豹子\n");
    printf("请下注:");
    scanf("%d",&BetType);
    if( (BetType==1)||(BetType==2)||(BetType==3))
    {
        return BetType;
    }
    else
    {
        return 1;
    }
} 

int GetAmount()
{

    printf("您要押多少元宝(最少10个,最多100个)");
    scanf("%d",&BetMoney);

    if(BetMoney<10)BetMoney=10;
    else if(BetMoney>100)BetMoney=100;

    return BetMoney;
}

void Throw() //Throw自定义的函数,用来掷出骰子的作用
{
    printf("欢迎您体验赌博机,按键盘任意键掷出骰子");

    srand(time(0)); //srand返回一个种子tiem调用当前时间
    while (!kbhit()) //!逻辑非运算符返回0时会表示为真 kbhit函数为检查键盘是否有输入,没有则返回一个非0的值,否则返回为0
    {
        a=rand()%6+1; //返回一个随机数,并取这个随机数6的余数使控制在1—5之间,并且在加1,使骰子的点数在1-6,赋值给a
        b=rand()%6+1;
        c=rand()%6+1;
        system("cls"); //调用系统的cmd执行清屏命令cls,system用来调用cmd的命令
        //a,b,c代表三粒骰子
        printf("骰子在转动:..........按键盘上的任意键来终止转动");
        printf("第一粒骰子:%d\n第二粒骰子的点数:%d\n第三粒骰子的点数:%d\n",a,b,c);
    }

}

int Judge(int a,int b,int c)
{
    if(a==b&&a==c) return 3;
    if(a+b+c>11) return 2;
    if(a+b+c<11) return 1;
    return 0;
}

void MoneyCalc()
{

    if(Judge(a,b,c)==3)
    {
        BetMoney=BetMoney*10;
        if(bet==3) //这是玩家赢的情况玩家加元宝,庄家减元宝
        {
            PlayerMoney+=BetMoney;
            DealerMoney-=BetMoney;
            printf("豹子,10赔率!您赢了庄家%d元宝,您现在总共%d元宝,庄家还剩%d元宝\n\n",BetMoney,PlayerMoney,DealerMoney);
        }
        else
        {

            PlayerMoney-=BetMoney;
            DealerMoney+=BetMoney;
            printf("豹子,10赔率!您输了%d元宝,您还剩%d元宝,庄家还剩%d元宝\n\n",BetMoney,PlayerMoney,DealerMoney);
        }
    }
    else if(Judge(a,b,c)==2)
    {
        BetMoney=BetMoney*2;
        if(bet==1) //代表用户买了大
        {
            PlayerMoney+=BetMoney;
            DealerMoney-=BetMoney;
            printf("大,2赔率!您赢了庄家%d元宝,您现在总共%d元宝,庄家还剩%d元宝\n\n",BetMoney,PlayerMoney,DealerMoney);
        }
        else
        {
            PlayerMoney-=BetMoney;
            DealerMoney+=BetMoney;
            printf("大,2赔率!您输了%d元宝,您还剩%d元宝,庄家还剩%d元宝\n\n",BetMoney,PlayerMoney,DealerMoney);
        }
    }
    else if(Judge(a,b,c)==1)
    {
        BetMoney=BetMoney*2;
        if(bet==2) //代表用户买了小
        {
            PlayerMoney+=BetMoney;
            DealerMoney-=BetMoney;
            printf("小,2赔率!您赢了庄家%d元宝,您现在总共%d元宝,庄家还剩%d元宝\n\n",BetMoney,PlayerMoney,DealerMoney);
        }
        else
        {
            PlayerMoney-=BetMoney;
            DealerMoney+=BetMoney;
            printf("小,2赔率!您输了%d元宝,您还剩%d元宝,庄家还剩%d元宝\n\n",BetMoney,PlayerMoney,DealerMoney);
        }
    }
    else
        printf("平局,您和庄家打成平手,您还剩%d元宝,庄家还剩%d元宝\n\n",PlayerMoney,DealerMoney);

}

int main()
{

    bet=GetBet();
    DetMoney=GetAmount();
    Throw(); //掷出骰子
    MoneyCalc();
    while(1);
    return 0;
} 

 
2014-04-25 20:47
qq740349116
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2014-4-25
收藏
得分:0 
回复 6 楼 kwxx
嗯是挺好玩
2014-04-26 18:08
快速回复:一个小程序编译错误求解啊
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017843 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved