C++怎么定义一个N行N列的数组
数组周围赋值1其余赋值2#include<iostream>#include<stdlib.h>usingnamespacestd;intmain(intargc,cha...
数组周围赋值1 其余赋值2
#include<iostream>
#include<stdlib.h>
using namespace std;
int main(int argc, char **argv)
{
//动态分配二维数组空间
//动态定义和初始化二维数组 部分代码
int row, col;
int i, j;
cout << "输入二维数组的行,列 :";
cin >> row >> col;
int **p2;
p2 = new int*[row];
for (i = 0; i < row; i++)
p2[i] = new int[col];
//输入二维数组的值
for (i = 0; i < row; i++)
for (j = 0; j < col; j++)
//输出二维数组
cout << "输出二位数组:" << endl;
for (i = 0; i < row; i++)
{
for (j = 0; j < col; j++)
cout << p2[i][j] << ' ';
cout << endl;
}
//释放二维数组
for (i = 0; i < row; i++)
delete[]p2[i];
delete[]p2;
}
在这个基础上应该怎么改 展开
#include<iostream>
#include<stdlib.h>
using namespace std;
int main(int argc, char **argv)
{
//动态分配二维数组空间
//动态定义和初始化二维数组 部分代码
int row, col;
int i, j;
cout << "输入二维数组的行,列 :";
cin >> row >> col;
int **p2;
p2 = new int*[row];
for (i = 0; i < row; i++)
p2[i] = new int[col];
//输入二维数组的值
for (i = 0; i < row; i++)
for (j = 0; j < col; j++)
//输出二维数组
cout << "输出二位数组:" << endl;
for (i = 0; i < row; i++)
{
for (j = 0; j < col; j++)
cout << p2[i][j] << ' ';
cout << endl;
}
//释放二维数组
for (i = 0; i < row; i++)
delete[]p2[i];
delete[]p2;
}
在这个基础上应该怎么改 展开
5个回答
展开全部
#include <iostream>
using namespace std;
int main(int argc, char** argv)
{
int n,m;
cout<<"输入行数:";
cin>>n;
cout<<"输入列数:";
cin>>m;
int** s=new int*[n]; //动态定义二维数组
for(int i=0;i<n;i++)
{
s[i]=new int[m];
}
for(int i=0;i<n;i++) //赋值
{
for(int j=0;j<m;j++)
{
if(i==0 || i==n-1 || j==0 || j==m-1)
{
s[i][j]=1;
}
else
{
s[i][j]=2;
}
}
}
for(int i=0;i<n;i++) //输出
{
printf("\n");
for(int j=0;j<m;j++)
{
printf("%d ",s[i][j]);
}
}
for(int i=0;i<n;i++) //释放二维数组
{
delete[] s[i];
}
delete[] s;
return 0;
}
展开全部
#include<iostream>
#include<stdlib.h>
using namespace std;
int main(int argc, char **argv)
{
//动态分配二维数组空间
//动态定义和初始化二维数组 部分代码
int row, col;
int i, j;
cout << "输入二维数组的行,列 :";
cin >> row >> col;
int **p2;
p2 = new int*[row];
for (i = 0; i < row; i++)
p2[i] = new int[col];
//输入二维数组的值
for (i = 0; i < row; i++)
for (j = 0; j < col; j++)
{
p2[i][j] = ((i % (row-1)) && (j % (col-1)))?2:1;
}
//输出二维数组
cout << "输出二位数组:" << endl;
for (i = 0; i < row; i++)
{
for (j = 0; j < col; j++)
cout << p2[i][j] << ' ';
cout << endl;
}
//释放二维数组
for (i = 0; i < row; i++)
delete[]p2[i];
delete[]p2;
cin >> i;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<iostream>
#include<vector>
using namespace std;
int main()
{
int M, N;
cin >> M >> N;
vector<vector<int>> A(M);
for (auto i = 0; i!=M; i++)
{
A[i].resize(N);
}
system("pause");
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1234567891011121314151617181920212223242526272829303132333435363738394041424344#include <iostream> using namespace std;int main(int argc, char** argv) { int n,m; cout<<"输入行数:"; cin>>n; cout<<"输入列数:"; cin>>m; int** s=new int*[n]; //动态定义二维数组 for(int i=0;i<n;i++) { s[i]=new int[m]; } for(int i=0;i<n;i++) //赋值 { for(int j=0;j<m;j++) { if(i==0 || i==n-1 || j==0 || j==m-1) { s[i][j]=1; } else { s[i][j]=2; } } } for(int i=0;i<n;i++) //输出 { printf("\n"); for(int j=0;j<m;j++) { printf("%d ",s[i][j]); } } for(int i=0;i<n;i++) //释放二维数组 { delete[] s[i]; } delete[] s; return 0;}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2017-08-26
展开全部
char (*pchar)[10] = new char[N][10];
delete [] pchar;
https://msdn.microsoft.com/en-us/library/kewsb8ba.aspx
delete [] pchar;
https://msdn.microsoft.com/en-us/library/kewsb8ba.aspx
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询