题目:
让计算机来想一个数,然后让用户来猜,用户没输入一个数,就告诉他大了还是小了,直到用户猜中为止,最后还要告诉用户它猜了多少次。
分析:
因为需要不断让用户猜,所以需要用到循环;
在实际写出程序之前,我们可以先用文字描述程序的思路
核心重点是循环条件
步骤:
1、计算机随机想一个数,记在变量number里;
2、一个负责计数的变量count初始化为0;
3、让用户输入一个数字a;
4、count递增(加1);
5、判断a和number的大小关系,如果a大,就输出”大“,如果a小就输出”小“;
6、如果a和number是不相等的(无论大还是小)程序回到第四步;
7、否则,程序输出”猜中“和次数count,然后结束。
代码:
#include<stdlib.h>
#include<stdio.h>
#include<time.h>
int main()
{
srand(time(0));
int number = rand()%100+1;
int count = 0;
int a = 0;
printf("我已经想好了一个1到100之间的数。");
do{
printf("请猜猜1到100之间数:");
scanf("%d",&a);//输入猜的数
count++;//猜的次数+1
if(a>number)
{
printf("你猜的数大了!");
}
else if(a<number);
{
printf("你猜的数小了");
}
} while(a!=number);
printf("太聪明了,你用了%d次就猜到了答案",count);
}
随机数
每次召唤rand()就得到一个随机的整数。
rand()函数需要的头文件是:<stdlib.h>
使用rand()函数产生1-100以内的随机整数:int number = rand() % 100+1;(对一个数不断除以100进行取余操作后的数一定是1—100之间的数,加1是为了防止出现100的次幂(如10000取余为0))。
小tip:使用正确方法最多猜七次。