数组的初始化
一维数组:
- int i[5] = {1,2,3,4,5}; //指定长度并对数组的所有元素赋值
- int i[5] = {1,2,3}; //指定长度并对数组的部分元素赋值
- int i[] = {1,2,3,4,5}; // 不指定长度直接对数组的所有元素赋值
二维数组:
- int a[2][3] = {{1,2,3},{4,5,6}}; //按行给二维数组赋值
- int a[2][3] = {1,2,3,4,5,6}; //将所有数组元素按顺序写到一个大括号里
- int a[2][3] = {{1},{2,3}}; // 对数组中的部分元素进行赋值,对于没赋值的元素系统自动赋值为0
- int a[][3] = {1,2,3,4,5,6}; //如果对全部数组元素赋值,则数组第一个下标可以省略但第二个不能省略。此时等同于int a[2][3]
数组的最值
方法一:
int max1(int num[]){
int max = 0; //假设第一个元素为最大值
for (int i = 1; i < 5; i++){
if (num[i] > num[max])
{
max = i;
}
}
return num[max];
}
方法二:
int max2(int num[]){
int max = num[0]; //假设第一个元素为最大值
for (int i = 1; i < 5; i++){
if (num[i] > max)
{
max = num[i];
}
}
return max;
}
冒泡排序
void main()
{
int x[5] = { 7, 9, 3, 5, 2 };
int temp = 0;
for (int m = 0; m < 5 - 1; m++)
{
for (int n = 0; n < 5 - 1 - m; n++)
{
if (x[n] > x[n + 1]) //从小到大排序
//if (x[n] < x[n + 1]) //从大到小排序
{
temp = x[n];
x[n] = x[n + 1];
x[n + 1] = temp;
}
}
}
printf("冒泡排序后:\n");
for (int i = 0; i < 5; i++)
{
printf("%d ", x[i]);
}
printf("\n");
getchar();
}