关于c的问题,如何解决?


#include
#include
#include
int fun()
{
    srand(time(NULL));
    int c=rand() % 6 + 1;
    return c;
}
int main()
{
    int gameover=0;
    int c1=fun();
    int c2=fun();
    
    switch(c1+c2)
    {
        case 7:
        case 11:gameover=1;
        printf("%d+%d=%d\n游戏者获胜\n",c1,c2,c1+c2);
        break;
        case 2:
        case 3:
        case 12:gameover=1;
        printf("%d+%d=%d\n游戏者输\n",c1,c2,c1+c2);
        break;
        default:
        printf("%d将作为游戏者获胜需要掷出的点数\n",c1+c2);
        break;
    }

    if(gameover==1)
    {
     return 0;    
    }
    int a=0,b=0,i,c=c1+c2;
    for(i=2;i<7;i++);
    {
        a=fun();
        b=fun();
        if((a+b)==c)
         {
         printf("第%d次掷出%d和%d游戏胜利",i,a,b); 
         getchar();
         return 0;
         }
         else
         {
         printf("第%d次掷出了%d和%d,游戏继续\n",i,a,b);
         }
    
    }
    printf("连续七次未掷出%d游戏失败",c);
    return 0;

}

为什么运行时只显示最后一次的结果而不显示过程中的变量

for(i=2;i<7;i++); 后面的分号删掉啊
srand(time(NULL)); 不能放到fun函数中,要放到main函数开头的地方。不然每次产生的随机数是一样的

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632