C++ 什么是;兰德()%3-1;以c+表示的平均值+;?
程序创建一个二维数组(名为“table”),并用随机数(-1、0或1)填充数组C++ 什么是;兰德()%3-1;以c+表示的平均值+;?,c++,random,srand,C++,Random,Srand,程序创建一个二维数组(名为“table”),并用随机数(-1、0或1)填充数组 intmain(){ srand(时间(0)); const int ROWS=3; 常数int COLS=4; int表[行][COLS]; 对于(int i=0;i
intmain(){
srand(时间(0));
const int ROWS=3;
常数int COLS=4;
int表[行][COLS];
对于(int i=0;i coutrand()%3给出一个介于0-->2范围内的数字提示%operator
…我建议您学习并阅读有关算术运算符的内容。或者搜索模运算符。阅读有关内容也可能会有所帮助。如果数组中填充了random(-1、0或1),您不了解哪一部分然后,该表达式可能会生成-1和1之间的随机数…x%y返回x除以y后剩下的值。因此对于x%3,它只能返回0、1或2。现在从中提取1,并猜测从随机整数可以得到什么。%n是。ohhh现在我明白了。我对“3-1”部分感到困惑但是我现在明白了。谢谢!错+不回答问题+这个问题不应该回答,因为它有点离题。范围是0->2
int main() {
srand(time(0));
const int ROWS=3;
const int COLS=4;
int table[ROWS][COLS];
for (int i = 0; i < ROWS; i ++) {
for (int j = 0; j < COLS; j++) {
table[i][j] = rand()%3-1;
}
}
for (int i = 0; i < ROWS; i ++) {
for (int j = 0; j < COLS; j++)
cout << setw(3) << table[i][j];
cout << endl;
}
return 0;
}