• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
hellowbabybaby
博客园    首页    新随笔    联系   管理    订阅  订阅

C语言04

数组:

数组是一种存储多个相同数据类型的数据类型。

 数组一种构造数据类型,

 元素,数组里面的每个数据成员,

 定义:   (1) [类型修饰符] 变量名[数组大小(常量表达式)]={初始值};

             (2)  int arry []={1,2,3,4,5}; 根据大括号里的数据,创建一个数组,并初始化,

             (3)  int arry[3]={1,2,3}; 创建一个三元素数组,并用后面大括号的数据进行初始化,其他值默认为0;

             (4) int arry[50]={0};创建一个包含50个元素的数组,,然后用后面大括号里面的值,对每一个元素初始化。

 

数组的注意事项:          (1)数组在内存中是一段连续的内存空间

                                 (2)数组占的内存大小,等于元素个数乘以每个元素所占空间,

                                  (3)初始化的数据个数不能超过数组定义的个数(4)既不指定个数,也没有在初始化的时候给出个数

                                (4)sizeof 求一个变量在内存中占多大的内存,

 

  遍历整个数组:数组的访问 通过数组的下标来实现的,下表的范围是[0,n-1];

                具体语法:数组名[下标];  数组中的arr[i]相当于基本数据类型的a,。

 

  数组越界:访问了数组之外的内存;当使用下标访问数组的时候,下标值可以超过数组的范围,但是编译器却不会进行检查,所以数组越界很危险,容易导致系统崩溃,因次,再使用数组的时候,必须保证没有越界。  在处理数组下标时一定要注意是否越界,

 

 数组排序:数组中存放的是数据,如同随随机数一样,数组里面的数据是无序的,但很多情况下,我们都需要一组有序的数据,

 

 常用的排序算法:(1)冒泡排序,(2)选择排序(相对来水哦性能好点)(3)快速排序(面试时最长用的)(4)基数排序,计数排序,桶排序,堆排序,哈西排序

   [13种排序详解] 舞动的排序。。

 

 冒泡排序:从左到右,执行多次循环,每次循环中也是从左到右,每次比较也是从左到右,比较相邻之间数字的大小,外层循环控制,如果需要交换就进行交换,(2个  for 循环 终止条件,  i<n-1;j<n-1-i;)

 冒泡,(1)循环的终止条件,循环多少次  趟数n-1,每趟的次数 n-1-i   

            (2)每次比较的是相邻的两个数, [j]和[ j+i]进行比较,

 

 字符数组;当一个数组里面,存放的数据全部是字符时候,就是一个字符数组, char arr[]={'a','b','c','d','e','f','g'};

 字符串,"lanou", "150835";    存储字符串,使用字符数组,打印字符串 [%s]

 字符串与字符数组的关系:字符串是字符数组,但是字符数组不一定是字符串;字符串会自动默认在末尾时 添加 '\0',是字符串结束的标志,有标志才是字符串,否则为字符数组。

 如果,用字符数组去接收一个字符串,一定要比数组的元素个数多。

 

字符串处理函,有四个:strlen();strcpy;strcmp;strcat;

 (1)字符串长度函数,strlen  求的是字符的个数,而不是字符元素的个数,不包含‘\0’,;

(2)字符串拷贝函数strcpy()     strcpy(a,b) 把b拷贝到a中

 (3)字符串拼接函数strcat()   拼接函数,将第二个字符串拼接到第一个参数的字符串后面,直接修改第一个字符串,即第一个字符串会被更改。 

(4)字符串比较 stracmp()   将两个字符串按照从左到右的顺序,挨个字符按照ascii码表里 值进行比较,直到出现不同的字符,或者到达‘\0’,返回的是两个字符的差值。

posted @ 2015-12-15 18:46  hellowbabybaby  阅读(211)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3