轮盘赌轮的用户输入

时间:2014-04-23 15:35:19

标签: c animation user-input

对于课程作业,我必须创建一个轮盘赌轮(欧洲):

  • 从标准输入读取一个有效的赌注
  • 随机选择中奖号码
  • 是2帧或更多帧的动画
  • 显示用户下注和中奖号码

到目前为止,我已经使用for循环为车轮设置了动画,并且有一个落在随机数字上的球。

我试图为用户输入编写一些代码

int bet[3];  
int result;
scanf( "%d" , &bet);
if (bet >=0 && bet <= 36); result = 1;
printf("Your bet is number %d", &bet);

当输入赌注到stdin控制台时,程序不会显示printf函数的内容,只是直接进入动画。任何建议或帮助改善用户输入将不胜感激

2 个答案:

答案 0 :(得分:1)

您需要使用换行符终止输出以刷新输出缓冲区

printf("Your bet is number %d\n", &bet);
//                           ^^ newline to flush output buffer

另外,您实际上不需要输入3个整数的数组。单int就足够了

int bet;
scanf("%d", &bet);
// ...
printf("Your bet is number %d\n", bet);

如果要保留3个整数的数组,则需要更改代码

int bet[3];  
int result;
scanf( "%d" , &bet[1]); // or &bet[0] or bet + 2
if (bet[1] >=0 && bet[1] <= 36); result = 1;
printf("Your bet is number %d", bet[1]);

另外(我在编辑上面的代码时注意到)你的if行中有一个额外的分号

if (bet >=0 && bet <= 36); result = 1;
//                       ^ ???

result = 1;不属于if

答案 1 :(得分:0)

if (bet >=0 && bet <= 36); result = 1;

做你想做的事。 if语句后面的分号很可能是错误的。现在,result始终设置为1.

相反:

if (bet >=0 && bet <= 36) {
    result = 1;
}