效果图:
#include<iostream>
#include<cstdlib>
#include<iomanip>
using namespace std;
void printMatrix(int n);//打印出一个n*n的矩阵,元素由0和1构成,随机生成
int main(void)
{
cout<<"输入一个整数n,将打印一个n*n的矩阵(n<=30)"<<endl<<"n=";
int n=0;
cin>>n;
printMatrix(n);
return 0;
}
void printMatrix(int n)
{
int arr[1000]={0};
//srand(1);//seed的默认值为1,现在指定为1 显然这样做的话 只能生成一次随机数。故采用下面的方法
srand(time(0));//
for(int i=0;i<n*n;i++)
{
arr[i]=rand() % 2;//产生不大于2的伪随机数,即0或1 要取得[a,b)之间的随机整数,
} //使用(rand() % (b-a))+ a (结果值将含a不含b)。在a为0的情况下,简写为rand() % b
cout<<endl;
int counter=0;
for(int i=0;i<n*n;i++)
{
cout<<setw(2)<<arr[i];
counter++;
if(counter%n==0)
cout<<endl;
}
cout<<endl;
}