c语言中数组*2,C语言数组 2.ppt

C语言数组 2.ppt

#include int main() { int i, a[120]; for (i = 0; i < 120; i++) { scanf("%d", &a[i]); } for (i = 0; i < 120; i++) { printf("%d ", a[i]); } return 0; } 一维数组的定义 类型说明符 数组名[常量表达式]; int a[5]; 定义了一个具有5个元素的数组a, 注意其下标从0开始。 a[0] a[1] a[2] a[3] a[4] 数组概述 一维数组元素的引用 数组名[下标] 例:x = a[0]+a[3]; 一维数组的初始化 int a[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; int a[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; int a[10] = {1, 2, 3}; /* 其余为0 */ int a[10] = {0}; /* 全部赋初值为0 */ 例1:写出下面程序的运行结果 例2:写出下面程序的运行结果 例3:用数组编程,计算出前10项fibonacci数 列,要求一行打印5个数。(1,1,2,3,5,8,13…) 排 序 冒泡法(升序) int a[5] n 冒泡法 a[0] a[1] a[2] a[3] a[4] 第一趟 21 13 90 32 -1 int a[5] n a[0] a[1] a[2] a[3] a[4] 第二趟 13 21 32 -1 90 int a[5] n a[0] a[1] a[2] a[3] a[4] 第三趟 13 21 -1 32 90 int a[5] n a[0] a[1] a[2] a[3] a[4] 第四趟 13 -1 21 32 90 冒泡法(升序) 例:用冒泡法对5个整数按从小到大排序 #include int main() { int a[5] = {21, 13, 90, 32, -1}; int i, j, t; for (i = 1; i < 5; i++) /*外循环控制排序趟数,n个数排n-1趟*/ { for (j = 0; j < 5-i; j++)/*内循环每趟比较的次数,第j趟比较n-j次*/ { if (a[j] > a[j+1])/*相邻元素比较*/ { t = a[j]; a[j] = a[j+1]; a[j+1] = t; } } } for (i = 0; i < 5; i++) printf("%d ", a[i]); return 0; } 选择法排序 选择法排序 选择法 选择法排序: 对数据进行二分检索或折半检索 对数据进行二分检索或折半检索(续) 编程:将一个数组中的值按逆序重新存放 二维数组的定义 类型说明符 数组名[常量表达式][常量表达式] int a[10][20]; float b[5][15]; 二维数组的存储方式 按行顺序存储:例: int a[3][3] a[0][0] a[0][1] a[0][2] a[1][0] a[1][1 ] a[1][2] a[2][0] a[2][1] a[2][2] 二维数组元素的引用 数组名[下标][下标] a[2][3] = 3; /* 注意:不是a[2, 3] */ x = a[1][5] * 34; 二维数组的初始化 int a[3][3] = {{1, 0, 0}, {0, 1, 0}, {0, 0, 1}}; int a[3][3] = {1, 0, 0, 0, 1, 0, 0, 0, 1}; int a[3][3] = {{1}, {0, 1}, {0, 0, 1}}; int a[3][4] = {{1}, {}, {3}}; int a[][3]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值