码迷,mamicode.com
首页 > 编程语言 > 详细

C语言_数组与排序

时间:2016-02-29 10:37:42      阅读:210      评论:0      收藏:0      [点我收藏+]

标签:

1、数组定义

数组:一组有序数据的集合。

 

 

//定义一个长度为5的整形数组

//数组里存储的是5个int类型的变量

int arr[5];

int    //数组的数据类型

arr   //数组的名字

5     //数组的长度

 

 

 

2、数组下标

数组的下标从0开始,到n-1结束(n是数组长度)。

int arr[5];

0

1

2

3

4

 

3、数组元素

数组里存储的每一个变量都称为数组的一个元素。

int arr[5];

 

arr[0] = 5;

arr[1]

arr[2]

arr[3]

arr[4]

 

 

4、数组赋值

1)初始化

int  arr[5];     

//未初始化的数组,每个元素的值默认是随机值;

 

int arr[5] = {1,2,3,4,5};      //完全初始化

 

int arr[5] = {1,2,3};             //部分初始化

//部分初始化中,未初始化的元素默认值是0;

 

int arr[] = {2,3,4,5,6};      //完全初始化的一种

//数组的长度是初始化中元素的个数;

 

int arr[5] = {};    

//数组中的每个元素值都为0;

 

 

int arr[];    //错误的定义——未指明数组长度

int  arr[n];  //错误的定义——定义数组必须指明长度,不可以在[]里写变量。

 

int n;

scanf(“%d”,&n);

int arr[n];

 

编译:静态的检查语法错误

运行:动态的检查逻辑错误

//数组的长度是在编译阶段分配的;

//scanf输入是在运行阶段进行的;

 

2)赋值

//数组的赋值需要对每个元素分别赋值;

 

int arr[5];

arr[0] = 3;

arr[1] = 4;

arr[2] = 5;

arr[3] = 6;

arr[4] = 7;

 

arr[5] = {1,2,3,4,5};      //错误的赋值

 

 

定义一个长度为6的整型数组,通过键盘输入分别给数组每个元素赋值,求所有元素的和,并输出。

 

 

5、排序

1)冒泡排序

排序规则(升序):数组里相邻元素依次两两比较,如果后面元素值比前面元素值小,则交换两元素值;比较结束,最大的元素值会沉底,一轮排序结束。

 

后续每一轮排序规则都按第一轮排序规则排,但是已经排好序的元素不再参与排序。

 

//长度为n的数组,只需要排序n-1轮

 

 

4 5 8 6 3  

4 5 6 3 8     一轮排序结果

4 5 3 6 8    二轮排序结果

4 3 5 6 8    三轮排序结果

3 4 5 6 8    四轮排序结果

3 4 5 6 8   五轮排序结果

 

C语言_数组与排序

标签:

原文地址:http://www.cnblogs.com/yuhanchen/p/5226386.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!