如何显示生成矩阵的直方图
如果程序要求用户输入任何字符(符号),例如。 (#,*,&安培; ....) 然后根据矩阵arr [] []
的元素显示该字符例如,如果矩阵arr [2] [2]的元素是:3 6 2 1 直方图将采用以下形式:
3 ***
6 ******
2 **
1 *
我试图这样做,但当然它不起作用
for(i=0;i<rows;i++)
{
for(j=0;j<cols;j++)
{
cout<<arr[i][j]<<setw(4)<<character;
}
}
这是程序
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int i, j,rows,cols;
int arr[5][5];
cout<< "enter rows and cols : ";
cin>> rows>> cols;
for(i=0;i<rows;i++)
{
for(j=0;j<cols;j++)
{
cout<< "enter elements "<<": ";
cin>> arr[i][j];
}
}
cout<<" Please enter the display character: ";
cin>>character;
cout<< "\n Histogram :"<< endl;
for(i=0;i<rows;i++)
{
for(j=0;j<cols;j++)
{
cout<<arr[i][j]<<setw(4)<<character;
}
}
return 0;
}
答案 0 :(得分:0)
打印每个元素时,您可以打印相同数量的*
您可以实现一个功能来打印所需数量的*
。
for(i=0;i<rows;i++)
{
for(j=0;j<cols;j++)
{
cout <<arr[i][j];
print_some_stars(arr[i][j]);
cout<<endl;
}
}