C语言笔记——第4章 数组

🌿前言:在我看来,书应该越读越薄的,所以我的笔记尽量记录了每一个点,可供复习与查阅,但没有详细的解释。我的C语言的笔记是在谭浩强老师的C程序设计(第五版)的基础上总结归纳的,结合了一些我自己的见解。如果是有其他见解 ,也欢迎大家提出。

一、一维数组

数组中的每一个元素都属于同一个数据类型

1.定义

类型说明符 数组名[常量表达式]

· 下标是从0开始的(数组a[10]中没有a[10]这个数)

· 常量表达式中可以包括常量和符号常量(a[3+5]是合法的)

2.引用

数组名[下标]

3.初始化

(1)在定义数组时对全部数组元素赋予初值

(2)只给部分元素赋值,剩下的系统自动赋为零

(3)全部赋初值时由于数量已经确定,可以不指定数组长度

二、二维数组

1.定义

类型说明符 数组名 [常量表达式] [常量表达式 ]

2.引用

数组名 [下标] [下标]

3.初始化

(1)分行给二维数组赋值

int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};

(2)也可以将所以数据写在一个花括号里,按顺序赋初值

(3)对部分元素赋初值

int a[3][4]={{1},{5},{9}};//只对第一列赋值

(4)如果对全部元素都赋值,第一维的长度可省,第二维不可

三、字符数组

1.定义(同上)

2.引用

3.初始化

(1)用字符串常量使字符数组初始化

char c[]={"i am happy"} //也可以省略花括号

(2)其余元素自动定为空字符(‘/0’) 其余同

4.字符和字符串结束标志(‘/0’)

5.字符数组的输入输出

(1)逐个字符输入输出,用格式符“%c”,

(2)整串字符一次输入输出,用格式符“%s”

· 用“%s”格式符输出字符串时,printf函数中的输出项是字符数组名,而不是数组元素名

char c[10]={"china"};

printf("%s",c);

(3)scanf函数中的输入项如果是字符数组名,不用加地址符&

scanf("%s",c);

6.字符串处理函数

(1)puts(字符数组)——输出一个字符串

puts(str);

· 其输出字符中可包含转义字符

(2)gets(字符数组)——输入一个字符串

(3)strcat(字符数组1,字符数组2)——字符串连接

· 把字符串2连接到字符串1后面,结果放到字符数组1中;

· 字符数组1必须足够大以便容纳后面的字符串2

(4)strcpy/strncpy(字符数组1,字符串2/字符数组2)——将字符串2/字符数组2复制到字符数组1中

char str1[10],str2[]="China";

strcpy(str1,str2);

(5)strcmp(字符串1,字符串2)——字符串比较

· 如果出现不同字符,则以第一对出现不同的字符的比较结果为准

· 出现在英语字典中位置后面的大,小写字母比大写字母大

· 比较结果最后会变成函数值,1>2,正整数,1<2,负整数

if(strcmp(str1,str2)>0)

printf("yes");

(6)strlen(字符数组)——测试字符串长度

· 也可以直接测试字符串常量的长度

(7)strlwr(字符串)——将字符串中大写的字母换成小写的

(8)strupr(字符串)——将字符串中小写的字母换成大写的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值