04.C语言——数组


提示:以下是本篇文章正文内容,下面案例可供参考

一、数组

数组在内存中是连续存放的
数组名就是数组首元素地址

int arr[]={1,2,3};
int *parr=arr;

二、一维数组创建及初始化

1.数组创建

int arr[10];
char str[10];

2.数组创建并初始化

int arr[5]={1,2,3,4,5};    完全初始化
int arr1[5]={1,2,3};       不完全初始化,其余默认为0
int arr2[]={1,2,3,4,5};     根据初始化内容,自动确定数组元素个数  


char str1[5]="abc";    不完全初始化,其余默认为0'\0'
char str2[]="abc";    自动在末尾加"\0"
char str3[]={'a','b','c'};      不会自动再添加"\0"
char str4[10]={'a','b','c'};   不完全初始化,其余默认为0'\0'

三、二维数组的创建及初始化

int arr[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};   完全初始化
int arr[3][4]={1,2,3,4,5,6,7,8,9,10};         不完全初始化,其余默认补0
int arr[3][4]={{1,2},{3,4,},{5,6}};           不完全初始化,其余默认补0

int arr[][4]={{1,2},{3,4,},{5,6}};             行可以省略,列不可以省略

四、数组作为参数

数组作为参数的时候,数组的大小需要在外部计算,作为一个参数传递进去

五、数组名是什么

数组名是首元素地址
例外:

  1. sizeof(数组名) 数组名表示整个数组,计算的是整个数组的大小 单位字节
  2. &数组名 数组名表示整个数组 取出的是整个数组的地址
int arr[10]={1,2,3,4,5,6,7,8,9,10};
printf("%p\n",arr);
printf("%p\n",arr[0]);     相等


六、冒泡排序

#include <stdio.h>
int main() {

	//冒泡排序,升序

	int arr[] = { 9,8,7,6,5,4,3,2,1 };
	int size = sizeof(arr) / sizeof(arr[0]);

	int i = 0;
	int j = 0;

	for (i = 0; i < size - 1;i++) {
		for (j = 0; j < size - 1 - i;j++) {
			
			if (arr[j]>arr[j+1]) {
				int tmp = arr[j];
				arr[j] = arr[j+1];
				arr[j+1] = tmp;
			}
		}
	}
	for (int i = 0; i < size;i++) {
		printf("%d ",arr[i]);
	}

	return 0;
}

总结

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值