当前位置:首页 » 编程语言 » c语言自定义二维数组

c语言自定义二维数组

发布时间: 2022-11-16 04:58:48

c语言中定义一个二维数组

简单点说 就不给代码了 累。。。
思路就是用for循环 两层循环就ok了
for(int i=0;i<多少多少;i++)
{
for(int j=0;j<多少多少;j++)

输入那个语句忘了。。。汗。。。

② C语言问题。定义一个二维数组

#include<stdio.h>
intmain()
{
intarr[5][6];
inti,j,max,min,sum,a,b,c,d,e;
floatave;
printf("Input30numbers: ");
for(i=0;i<5;i++)
for(j=0;j<6;j++)
scanf("%d",&arr[i][j]);//此处为srr[i][j],你写成srr[5][6]就成了为crr第6行第七列赋值了,不但错误,更是越界了!
printf(" ");
min=max=arr[0][0];//将最大值与最小值都初始化为第一个元素
a=b=c=d=0;//下标也要初始化!
for(i=0;i<5;i++)
for(j=0;j<6;j++)
{
if(max<arr[i][j])
{
max=arr[i][j];
a=i;
b=j;
}
if(min>arr[i][j])
{
min=arr[i][j];
c=i;
d=j;
}
}
printf("max=arr[%d][%d]=%d ",a,b,max);
printf("min=arr[%d][%d]=%d ",c,d,min);

sum=0;
for(i=0;i<5;i++)
{
for(j=0;j<6;j++)
sum+=arr[i][j];
e=i;
ave=sum/6.0;//写成6.0使得sum提升到浮点型
printf("ave=arr[%d]=%f ",e,ave);
}
return0;
}

楼主基本没有大错误,只是不够仔细,用来保存特定值的变量使用前一定要初始化,如本例中的最大值,最小值,下标,都是必须初始化的!

整型与整型运算会得到整型,1/2=0,5/4=1;系统会舍去小数部分。只要将其中一个提升至浮点型即可,如1.0/2,5/4.0,如果是两个整型变量,可以写成(float)a/b,即可使得得到浮点型结果!


2013 5 25 7:05

1L

耗时 4min

③ C语言 定义二维数组

二维数组定义的一般形式是:

类型说明符 数组名[常量表达式1][常量表达式2]

其中常量表达式1表示第一维下标的长度,常量表达式2 表示第二维下标的长度

inta[3][4];

④ c语言怎么创建二维数组

int a[m][n];//就表示一个m行n列的整型二维数组
在c语言中数组的下标是从0开始的所以,数组a的元素个数可以表示为:a[0][0]-a[m-1][n-1]

例如:

#include<stdio.h>
intmain()
{
inta[3][2],i,j;//定义一个3行2列的整型二维数组a

for(i=0;i<3;i++)//依次给二维数组赋值
for(j=0;j<2;j++)
scanf("%d",&a[i][j]);
printf(" ");
for(i=0;i<3;i++){//输出二维数组
for(j=0;j<2;j++)
printf("%d",a[i][j]);
printf(" ");
}
return0;
}
/*
运行结果:
12
34
45

12
34
45
*/

⑤ C语言中如何定义一个二维数组,数组长度由输入值确定

可以通过malloc()函数动态分配,示例:

//---------------------------------------------------------------------------

#include <stdio.h>
#include <stdlib.h>
typedef int datatype;

datatype **na(const int m,const int n) /*创建一个m行n列的datatype类型数组,返回首地址,如果创建失败则返回NULL*/
{
int i;
datatype **a=(datatype**)malloc(sizeof(datatype *)*m);
if (!a) {
return NULL;
}
else
for (i = 0; i<m; i++) {
a[i]=(datatype*)malloc(sizeof(datatype)*n);
if (!a[i]) {
return NULL;
}
}
return a;
}

void dela(datatype **a,const int m) /*删除用na()函数创建的并且有m行元素的二维数组a*/
{
int i;
for (i = 0; i<m; i++)
free(a[i]);
free(a);
}
int main(void)
{
datatype **dta=na(3,2); /*创建一个3行2列的datatype数组*/
int i,j;
if (!dta) { /*如果创建失败,则输出错误信息并结束程序*/
fprintf(stderr,"MEMORY ERROR\n");
return -1;
}
else
{
for (i=0; i<3; i++) { /*使用刚才创建的二维数组*/
for (j=0; j<2; j++) {
dta[i][j]=i*j;
printf("%d ",dta[i][j]);
}
putchar('\n');
}
}
dela(dta,3); /*动态创建的数组要手动删除*/
return 0;
}
//---------------------------------------------------------------------------

⑥ c语言如何定义二维数组

二维数组定义的一般形式是:
dataType arrayName[length1][length2];

其中,dataType 为数据类型,arrayName 为数组名,length1 为第一维下标的长度,length2 为第二维下标的长度。

例如:
int a[3][4];
定义了一个 3 行 4 列的二维数组,共有 3×4=12 个元素,数组名为 a,即:
a[0][0], a[0][1], a[0][2], a[0][3]
a[1][0], a[1][1], a[1][2], a[1][3]
a[2][0], a[2][1], a[2][2], a[2][3]

⑦ c语言怎么定义二维数组

#include<stdio.h>
#defineN3
#defineM4
voidmain()
{
inta[N][M];
intb[M][N];
inti,j;
for(i=0;i<N;i++)
{
for(j=0;j<M;j++)
{
scanf("%d",&a[i][j]);
}
}
for(i=0;i<N;i++)
{
for(j=0;j<M;j++)
{
printf("%5d",b[i][j]);
}
printf(" ");
}
for(i=0;i<N;i++)
{
for(j=0;j<M;j++)
{
b[j][i]=a[i][j];
}
}
for(i=0;i<M;i++)
{
for(j=0;j<N;j++)
{
printf("%5d",b[i][j]);
}
printf(" ");
}
}

⑧ c语言中二维数组的定义

c语言中,要定义一个三行四列的int二维数组,可以采用以下的语句:
int a[3][4];

⑨ C语言中如何定义一个二维数组

用指针new出来 二维数组定义必须规定列 int a[][6]这样吧 所以用指针动态开

⑩ c语言中二维数组的定义

二维数组定义的一般形式是:
类型说明符 数组名[常量表达式1][常量表达式2]
其中常量表达式1表示第一维下标的长度,常量表达式2 表示第二维下标的长度

int a[3][4];

热点内容
FTP服务器本地策略 发布:2025-01-13 13:20:47 浏览:485
地下城堡2挂机脚本 发布:2025-01-13 13:20:44 浏览:205
web云服务器配置 发布:2025-01-13 13:19:54 浏览:459
小康密码是多少 发布:2025-01-13 13:19:13 浏览:41
javafile类 发布:2025-01-13 13:19:08 浏览:83
c语言求逆 发布:2025-01-13 13:14:43 浏览:929
中控大屏怎么看配置 发布:2025-01-13 13:11:33 浏览:912
linux多行删除 发布:2025-01-13 13:06:01 浏览:200
传奇3脱机脚本 发布:2025-01-13 13:05:08 浏览:751
java请求https 发布:2025-01-13 12:53:35 浏览:868