
C语言 二维数组 在输入时换行存储的问题
定义一个了a[2][100]的二维数组,如果第一行存储的数组不足100,怎么实现56811910129...
定义一个了a[2][100]的二维数组,如果第一行存储的数组不足100,怎么实现
5 6 8 11 9
10 12 9 展开
5 6 8 11 9
10 12 9 展开
2个回答
展开全部
如果定义了的数组下标比较高,可以少用,但也有一个条件,第一行的数字相同才好用。如让数组每行的存数个数不超过5个,可以这样像下面这段程序一样使用(注意声明的数组下标是[2][100]),这叫高声明低使用,是C语言本身允许的:
int main
{
int a[2][100];
int i,j;
for(i=0;i<2;i++)
for(j=0;j<5;j++)
scanf("%d",&a[i][j]);
return 0;
}
但是如果每一行的数字的个数都不一样多,可以用其它数字(如0),否则二维数组用起来就很麻烦。
int main
{
int a[2][100];
int i,j;
for(i=0;i<2;i++)
for(j=0;j<5;j++)
scanf("%d",&a[i][j]);
return 0;
}
但是如果每一行的数字的个数都不一样多,可以用其它数字(如0),否则二维数组用起来就很麻烦。
更多追问追答
追问
for循环实现不是那样的,首先声明了一个a[2][100]的数组,在逐一输入的时候,内层for的循环条件j<的那个数如何根据输入数字的个数自动判断,主要是想在输入a[0][100]时不满100个数,按回车跳到a[1][100]
追答
这个有办法解决,等晚上我打开电脑一起探讨吧!你是不是想加上一个回车后,这一行就输入完毕,再输入就是a[1]或a[2]了?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询