33,321
社区成员




#include <stdlib.h>
#include <iostream.h>
#include <time.h>
int roll1 (int a,int x);
int roll2 (int b,int y);
int a,b,x,y;
void main ()
{
int sum;
srand((int)time(NULL));
int roll1 (int a,int x);
int roll2 (int b,int y);
sum=x+y;
if(sum==0&&sum==2)
cout<<"随机结果是偶数"<<endl;
else
cout<<"随机结果是奇数"<<endl;
}
int roll1 (int a,int x)
{
a=1+(rand()%6);
if(a%2==0)
x=0;
else
x=1;
return x;
}
int roll2 (int b,int y)
{
b=1+(rand()%6);
if(b%2==0)
y=0;
else
y=1;
return y;
}
#include <stdlib.h>
#include <iostream>
#include <time.h>
using namespace std;
void roll1 (int a,int* x);
void roll2 (int b,int* y);
int a=0,b=0,x,y;
void main ()
{
int sum;
srand((int)time(NULL));
roll1 (a,&x);
roll2 (b,&y);
sum=x+y;
if(sum==0||sum==2)
cout<<"随机结果是偶数"<<endl;
else
cout<<"随机结果是奇数"<<endl;
}
void roll1 (int a,int *x)
{
a=1+(rand()%6);
if(a%2==0)
*x=0;
else
*x=1;
//return x;
}
void roll2 (int b,int *y)
{
b=1+(rand()%6);
if(b%2==0)
*y=0;
else
*y=1;
//return y;
}
#include <stdlib.h>
#include <iostream>
#include <time.h>
using namespace std;
int roll1 (int a,int x);
int roll2 (int b,int y);
int a,b,x,y;//全局变量,被自动初始化为0;
void main ()
{
int sum;
srand((int)time(NULL));
int roll1 (int a,int x);//你这两个函数的参数不应该再加int关键字了,
int roll2 (int b,int y);//这样的重复声明为什么会过编译?我在什么地方看到过函数中不能再声明函数的。
// 上面两句根本就不会执行。
// 再说,就算你把int都去掉,函数执行之后,你的x,y的值都不会变化,还是0.这就是传值和传引用的区别
sum=x+y; //sum = 0 + 0;
if(sum==0&&sum==2) // sum == 0 && sum == 2 -->> true && false == false
cout<<"随机结果是偶数"<<endl;
else
cout<<"随机结果是奇数"<<endl;//这句话总是得到执行!
}
int roll1 (int a,int x)
{
a=1+(rand()%6);
if(a%2==0)
x=0;//局部变量x,全局变量::被隐藏
else
x=1;
return x;
}
int roll2 (int b,int y)
{
b=1+(rand()%6);
if(b%2==0)
y=0;//同上
else
y=1;
return y;
}