C语言 数组 冒泡排序法

本文介绍了C语言中的数组基础知识,包括数组的创建、初始化和内存存储特性,特别是对一维和二维数组的深入讲解。文章还探讨了数组作为函数参数时的行为,并详细阐述了冒泡排序算法的基本思想和实现过程。
摘要由CSDN通过智能技术生成

数组的基本概念:
批量创建一组相同类型的变量。

创建数组:

//创建数组
int arr[4] = {
    1, 2, 3, 4 };
//批量创建了一组int类型的变量。
//有4个变量 数组名字为arr
//把初始值一次的设置进{}

a)[4]中的4可以省略,但数组的长度就和后面初始化的列表里的元素个数一致
b)[4]如果不省略的时候,后面的初始化列表的元素不能比4个多。
c)[4]如果不省略的时候,后面的初始化列表的元素可以比4个少,剩下的元素填成0.
d)创建数组的时候,[ ]里面的数字只能是一个常量,不能是变量。(C89中)
可以这样

#define size 4

char arr[size] = {
   0};
enum{
   
    size = 4,
};
    
char arr[size] = {
   0};    

e)如果省略了[4]中的数字,就一定要使用{ }进行初始化。

int arr[];
//这样就会编译不了

f)如果没有省略[4]的数字,并且也没有进行初始化直接进行打印就会打印出内存的残留值

#include<stdio.h>

int main(){
   
    inr arr[4];
    printf("s",arr[4]);
    return 0;
}    

如果是一个全局变量,没有被显式初始化,会被自动初始化为0.
如果是一个巨擘变量,没有被显式初始化,就是上次残留的值.

//针对字符数组的初始化
//可以向普通数组一样使用{}初始化
//也可以使用""来用一个字符串进行初始化
char str1[] = {
    'a', 'b', 'c' };//字符数组
char str3[] = "abc"; //字符串

不是每个字符数组都可以成为"字符串",
字符串是一种特殊的字符数组,一定是以/0来结尾。
给任何str系列的函数(strlen,strcmp…)进行传参的时候,必须要由人来保证参数是一个合法的字符串。

数组的使用:
1.求数组长度

 sizeof(arr) / sizeof(arr[0])

2.取下标~[]
从0开始 到 len-1结束。
一旦下标越界,就是未定义行为!

#include<stdio.h>

#int main(){
   <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值