函数使用思路
srand函数是生成一个种子,当种子不同时,rand函数生成的随机数不同,所以生成随机数要让种子不同,使用time函数可以使得种子不同
srand函数
void srand(unsigned int seed)
参数:
seed:生成一个伪随机数的种子
rand函数
int rand(void);
返回值:
返回0到RAND_MAX(32767)的一个伪随机数
time函数
函数功能: 得到当前日历时间或者设置日历时间
函数原型: time_t time(time_t *timer)
参数说明: timer=NULL时得到当前日历时间(从1970-01-01 00:00:00到现在的秒数),timer=时间数值时,用于设置日历时间,time_t是一个unsigned long类型。如果 timer不为空,则返回值也存储在变量 timer中。
函数返回: 当前日历时间
函数实现过程
随机数答题游戏
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int a,b,i,r,op;
float flag,x;
do{
r=0;
for(i=0;i<10;i++)
{
srand(time(NULL));
a=rand()%10+1;
b=rand()%10+1;
op=rand()%4+1;
switch (op) {
case 1:
printf("%d+%d=?\n",a,b);
flag=a+b;
break;
case 2:
printf("%d-%d=?\n",a,b);
flag=a-b;
break;
case 3:
printf("%d*%d=?\n",a,b);
flag=a*b;
break;
case 4:
printf("%d/%d=?\n",a,b);
flag=a/b;
break;
}
scanf("%f",&x);
if(x==flag)
{
printf("right!\n");
r++;
}
else
printf("wrong\n");
}
printf("总分为%d\n",r*10);
printf("正确率为%d%%\n",r*10);
}while(r<8);
return 0;
}