如题所述
数组长度是固定的,你可以用vector容器试试 ,它是不定长度的,通过成员函数.size()返回其中保存数据的数量,如果非要用数组,那么先用容器保存,在用.size()作为个数创建数组,在逐个拷贝到数组里面
温馨提示:答案为网友推荐,仅供参考
第1个回答 2020-03-26
c++的代码
const int r=3,c=2;//r代表2维数组的行数,c代表2维数组的列数
int arr[r][c]={0},n=0;
for(int i=0;i<r;i++)
{
for(int j=0;j<c;j++)
{
cin>>n;//输入n
if(n!=-1)//如果n不等于-1
arr[i][j]=n;//就把n付给数组元素
else//否则,退出循环
break;
}
if(n==-1)
break;
}
c也是这个思路。
const int r=3,c=2;//r代表2维数组的行数,c代表2维数组的列数
int arr[r][c]={0},n=0;
for(int i=0;i<r;i++)
{
for(int j=0;j<c;j++)
{
cin>>n;//输入n
if(n!=-1)//如果n不等于-1
arr[i][j]=n;//就把n付给数组元素
else//否则,退出循环
break;
}
if(n==-1)
break;
}
c也是这个思路。
第2个回答 2020-03-26
#include <iostream>
int main (int argc, char **argv)
{
int col=3,row=3;
std::cout<<"请输入数组的行数:";
std::cin>>row;
std::cout<<"请输入数组的列数:";
std::cin>>col;
int* parry = new int[row*col];
int i=0;
while (i<row) {
int j=0;
while (j<col) {
std::cout<<"请输入数组"<<i<<行<<j<<列的元数:";
std::cin>>parry[row][col];
++j;
}
++i;
}
}
int main (int argc, char **argv)
{
int col=3,row=3;
std::cout<<"请输入数组的行数:";
std::cin>>row;
std::cout<<"请输入数组的列数:";
std::cin>>col;
int* parry = new int[row*col];
int i=0;
while (i<row) {
int j=0;
while (j<col) {
std::cout<<"请输入数组"<<i<<行<<j<<列的元数:";
std::cin>>parry[row][col];
++j;
}
++i;
}
}
第3个回答 2020-03-26
#include<stdio.h>
int main()
{
int n,m,i=1,j,a[111][111];
scanf("%d%d",&n,&m);
while(i<=n)//自定义行数
{
j=1;
while(j<=m)//自定义列数
{
scanf("%d",&a[i][j]);
j++;
}
i++;
}
return 0;
}本回答被网友采纳
int main()
{
int n,m,i=1,j,a[111][111];
scanf("%d%d",&n,&m);
while(i<=n)//自定义行数
{
j=1;
while(j<=m)//自定义列数
{
scanf("%d",&a[i][j]);
j++;
}
i++;
}
return 0;
}本回答被网友采纳