目录
作业
对比:
结果:
二维数组
二维数组的初始化
作业
作业
#define max(a,b)(a>b)?a:b
#include<stdio.h>
int main() {int x, y,c;scanf("%d %d", &x,&y);c=max(x, y);printf("%d", c);return 0;
}
对比:
define对于这种简单定义会比函数简单,直接明了省事。
如果正常比大小一定会引用if+else的组合。
结果:
二维数组
在一维数组里可能有一些局限性
1. 结构化数据的表示:一维数组通常只能表示线性结构的数据,即每个元素之间只有一种线性关系。如果数据结构更加复杂,例如,具有多个维度或层次结构,那么一维数组可能无法有效地表示。
2. 空间利用率:一维数组在空间利用方面可能并不高效。例如,如果你正在尝试表示一个二维网格或矩阵,你可能会发现一维数组会浪费很多空间,因为你不能直接在一个数组中存储矩阵的所有行和列。
二维数组可以比较好的解决
1. 结构化数据的表示:二维数组可以自然地表示二维数据结构,如矩阵或表格。这对于需要处理这些类型的数据的应用来说是非常有用的。
2. 空间利用率:与一维数组相比,二维数组可以更高效地存储和访问二维数据。例如,你可以直接在一个二维数组中存储矩阵的所有行和列,而不需要浪费额外的空间。
当然他也有他的限制比如:
二维数组的大小是固定的,一旦创建,你就不能改变它的大小。此外,对于更复杂的数据结构,如三维数据或具有不规则结构的数据,你可能需要使用更复杂的数据结构,如多维数组、列表、树或图。
二维数组的初始化
#include<stdio.h>
int main() {int a[100][100];for(int i=0;i<3;i++){for(int j=0;j<3;j++){scanf("%d",&a[i][j]);}}for(int i=0;i<3;i++){for(int j=0;j<3;j++){printf("%d",a[i][j]);}printf("\n");}return 0;
}
作业
输入4个整数
要求后三个数都小于第一个数
判断第四个数在不在中间两个数的范围内(不包括内两个数)