c语言二位数组
1. 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
*/
2. c语言二维数组如何定义
比方说:int a[3][4]={1,2,3,4};
int *p;
p=a;
p++;
之后p就指向了a[1],a[1]里面有四个元素。
3. 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
*/
4. c语言二维数组
例如对整型二维数组a[3][2]赋值方法一:在定义的同时赋值 int a[3][2]={0};//所有数组元素均为0 方法内二: int a[3][2]={1,2,3,4,5,6};//常规的赋值方法方法三容: int a[3][2]={{1,2},{3,4},{5,6}};//分行的赋值方法方法四: int a[3][2]={{1,2},{0},{3}};//部分赋值方法,第一行元素的值分别为1,2,第二行元素值都是0,第三行第一个元素值为3,第二个元素值为0 方法五: int a[3][2];/先定义 for(i=0;i<=3;i++) //用双重for循环赋值,i,j表示二维数组下标 for(j=0;j<=2;j++) scanf("%d",&a[i][j]); 希望对你有所帮助。
5. c语言中定义一个二维数组
int a[100][100]; //先把数组定义的大点
int n,m,i,j;
printf("请输入行数:");
scanf("%d",&n);
printf("请输入列数:");
scanf("%d",&m);
printf("请输入%d行%d列数字\n",n,m);
for(i=0;i<n;i++)
for(j=0;j<m;j++)
scanf("%d",a[i][j]);
6. c语言中二维数组如何使用
#include<stdio.h>
#include<stdlib.h>
intmain()
{
inti,j,n=1;
inta[15][15];
//赋值
for(j=0;j<15;j++)
{
for(i=0;i<15;i++)
{
a[j][i]=n;
n++;
}
}
//输出显示
for(j=0;j<15;j++)
{
for(i=0;i<15;i++)
{
printf("%3d",a[j][i]);//%3d,3表示3按三个字符对齐
}
printf(" ");//显示完一版行权换行
}
return0;
}
7. c语言中二维数组的定义
c语言中,要定义一个三行四列的int二维数组,可以采用以下的语句:
int a[3][4];
8. C语言中如何定义一个二维数组
int a[2][3];
a[0][0], a[0][1], a[0][2],
a[1][0], a[1][1], a[1][2]
表示两行三列
9. C语言 用二位数组
还需要吗?
10. c语言二位数组操作
#include <stdio.h>
#include <time.h>
#define N 5
void print(int A[N][N])
{
int i, j;
for (i = 0; i < N; i++)
{
for (j = 0; j < N; j++)
printf("%4d ", A[i][j]);
printf("\n");
}
}
void find(int A[N][N])
{
int i, j;
int mini = 0, minj = 0, maxi = 0, maxj = 0;
for (i = 0; i < N; i++)
for (j = 0; j < N; j++)
{
if (A[i][j] > A[maxi][maxj])
{
maxi = i;
maxj = j;
}
if (A[i][j] < A[mini][minj])
{
mini = i;
minj = j;
}
}
printf("最大值%d, 行号 %d, 列号 %d\n", A[maxi][maxj], maxi, maxj);
printf("最小值%d, 行号 %d, 列号 %d\n", A[mini][minj], mini, minj);
}
void sort(int A[N][N])
{
int b[N * N], t;
int i, j, k = 0;
for (i = 0; i < N; i++)
for (j = 0; j < N; j++)
b[k++] = A[i][j];
for (i = 0; i < N * N - 1; i++)
for (j = 0; j < N * N - 1 - i; j++)
if (b[j] > b[j + 1])
{
t = b[j];
b[j] = b[j + 1];
b[j + 1] = t;
}
k = 0;
for (i = 0; i < N; i++)
for (j = 0; j < N; j++)
A[i][j] = b[k++];
}
int main()
{
int A[N][N];
int i, j;
srand(time(NULL));
for (i = 0; i < N; i++)
for (j = 0; j < N; j++)
A[i][j] = rand() % 1000;
print(A);
find(A);
sort(A);
print(A);
return 0;
}