这是前些天看见网友写的,但自己运行时随机数总是,A=346,B=130,而且总是除法,十分困惑了,希望大家帮帮忙,着急用的!!!!
* a,b为随机两数?c为随机数,由c得出随机运算符,d为运算符的表示
*/
#include "stdio.h"
#include "conio.h"
main()
{
int a,b,c,e,f;
char d;
a=rand();
b=rand();
c=rand();
printf("a=%d,b=%d\n",a,b);
switch (c%4){
case 0:d='+'; e=a+b;break;
case 1:d='-'; e=a-b;break;
case 2:d='*'; e=a*b;break;
case 3:d='/'; e=a/b;break;
}
do {
printf("c=a%cb=",d);
scanf("%d",&f);
if(e!=f) printf("error\n");
}while(e!=f);
printf("You are right!");
getch();
}
----------------解决方案--------------------------------------------------------
随即数 种子问题~~
----------------解决方案--------------------------------------------------------
你要的话我做过
给你
----------------解决方案--------------------------------------------------------
我刚刚学C没多久,帮忙解决一下好吗
----------------解决方案--------------------------------------------------------
那太感谢了,我的QQ13772465
----------------解决方案--------------------------------------------------------
随机数怎么一直都是不变的呢?
----------------解决方案--------------------------------------------------------
我也一直用不来随机数相关的函数,谁能给我详细讲解一下
----------------解决方案--------------------------------------------------------
先要用randomize()初始化随机发生器就ok了
----------------解决方案--------------------------------------------------------
原因很简单,随机数的种子没有变,当然老随机出同一组数
----------------解决方案--------------------------------------------------------
这是前些天看见网友写的,但自己运行时随机数总是,A=346,B=130,而且总是除法,十分困惑了,希望大家帮帮忙,着急用的!!!!
* a,b为随机两数?c为随机数,由c得出随机运算符,d为运算符的表示
*/
#include "stdio.h"
#include "conio.h"
main()
{
int a,b,c,e,f;
char d;
a=rand();
b=rand();
c=rand();
printf("a=%d,b=%d\n",a,b);
switch (c%4){
case 0:d='+'; e=a+b;break;
case 1:d='-'; e=a-b;break;
case 2:d='*'; e=a*b;break;
case 3:d='/'; e=a/b;break;
}
do {
printf("c=a%cb=",d);
scanf("%d",&f);
if(e!=f) printf("error\n");
}while(e!=f);
printf("You are right!");
getch();
}
随机数前加:
srand((unsigned)time(NULL);
以时间函数做为随机数种子
注意time.h,stdlib.h
----------------解决方案--------------------------------------------------------