一个猜数字的代码
#include
#include
#include //对应后面的time(NULL)
int main()
{
void srand(unsigned seed);//播撒种子
int a = rand()%100;//生成数(0~32767),取余100得(0~99)
int b, sum=3;
srand(time(NULL));//时间不同,产生的数不同,但是好像有一些规律,比如第一个都是41,每秒一个,增加大概3-4
scanf("%d", &b);
while(1)
{
if(b>a)
printf("大了大了,再猜");
else if(bprintf("小了,再来\n");
else if(b==a)
{
printf("对啦对啦hhh\n");
break;//break跳出循环(for、while、do while)
}
if(sum==0)
{
printf("没机会了,重开吧亲;)");
break;
}
sum--;
getchar();
}
return 0;
}
按我的写法,应该输入一次然后直接三次循环break了,但是为什么可以输入两次,第一次只显示两次嘞?
知道为什么这个代码运行得出这个结果就好
#include<stdio.h>
#include<stdlib.h>
#include<time.h>//对应后面的time(NULL)
int main()
{
srand(time(NULL));//时间不同,产生的数不同,但是好像有一些规律,比如第一个都是41,每秒一个,增加大概3-4
int a = rand()%100;//生成数(0~32767),取余100得(0~99)
int b, sum=3;
while(1)
{
printf("请输入您猜的数:");
scanf("%d", &b);
if(b>a)
printf("大了大了,再猜");
else if(b<a)
printf("小了,再来\n");
else if(b==a)
{
printf("对啦对啦hhh\n");
break;//break跳出循环(for、while、do while)
}
if(sum==0)
{
printf("没机会了,重开吧亲;)");
break;
}
sum--;
}
return 0;
}