linux环境下C编程(七)

来源:互联网 发布:淘宝店企业和个人区别 编辑:程序博客网 时间:2024/05/17 04:03
数组代表内存中多个连续的存储位置
数组要求每个存储位置对应的数据类型一样
数组有一个名称
数组对应的每一个存储位置都有编号 从0开始 依次递增 这个编号叫做下标
下标的有效范围是从0开始到存储位置的个数减一 超过范围的下标不能使用
使用循环操作数组中的每个存储位置可以最大限度体现数组的优势
避免随着数据量的增加而导致语句量的增加
数组的优势源于数组对应的内存是连续的


数组可以直接初始化
如果每个存储位置都提供了初始化数据则可以省略存储位置的个数
没有对应初始化的存储位置被初始化成0
多余的初始化数据自动被丢弃


数组名称在计算机中使用第一个存储位置的地址表示
数组名称不可以被赋值


数组名称加下标可以得到下标对应的存储位置的地址
地址数据加常数不是按照数学方式计算 这个常数代表多个存储位置的大小


数组中可以使用*(addr + n)的当时表示下标为n的存储位置


可以对数组名称使用sizeof关键字计算整个数组占多少个字节


声明数组时必须明确存储位置的个数而且永不改变
生命数组时可以使用变量表示这个存储位置的个数 这种数组叫做变长数组(C99)
变长数组不可以初始化


rand()标准函数用来获得随机数 直接当成数字使用就可以得到随机数
为了使用rand()函数需要包含stdlib.h
srand()可以设置随机数种子 在每个程序中应该使用一次 同样需要包含stdlib.h


time()标准函数获得当前系统时间 需要包含time.h文件


一维数组使用一个整数就可以表示存储位置
二维数组首先把连续存储位置分成几组 然后使用一个整数表示组号 一个表示组内编号 两个整数结合使用
使用二维数组需要两个下标用来表示组编号 组内下标 
使用循环嵌套操作二维数组是常见方式
二维数组也可以当表使用
二维数组可以当成多个一维数组进行初始化 也可以当成连续存储位置进行初始化


二维数组名称也是第一个存储位置的地址表示的
使用二维数组时也可以只提供一个下标 这个下标作为组下标使用 这种使用方法可以表示某一组存储位置


练习:
1、编写程序验证一个身份证是否合法 
身份证前17个数字分别乘以以下数字(7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2)
加起来除以11取余 从余数中找到校验 (1 0 X 9 8 7 6 5 4 3 2)
2、编写程序在一个10X10的棋盘上随机布置10个地雷 然后把整个棋盘打印在屏幕上





0 0
原创粉丝点击