- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
用来存放字符的数组称为字符数组,例如:
char c[10];
由于char 和int 可以相互转换,也可以定义为:
int c[10];
但这时每个数组元素占4 个字节的内存。
字符数组也可以是二维或多维数组。例如:
char c[5][10];
字符数组也允许在定义时进行初始化,例如:
char c[10]={c, , p, r, o, g, r, a,m};
// c[9]未赋值,所以为默认值0
当对全体元素赋初值时也可以省去长度说明。例如:
char c[]={c, , p, r, o, g, r, a, m };
这时c 数组的长度自动定为9。
字符数组和普通数组一样,也是通过下标引用各个元素。
【示例】输出字符数组中的元素。
#include stdio.h
int main(){
int i,j;
char a[][7]={
{C, ,L,a,n,g},
{P,r,o,g,r,a,m},
{F,u,n,n,y}
};
for(i=0; i=2; i++){
for(j=0; j=6; j++){
printf(%c, a[i][j]);
}
printf(\n);
}
return 0;
}
运行结果:
C Lang
Program
Funny
本例的二维字符数组由于在初始化时全部元素都赋以初值,因此
一维下标的长度可以不写。
字符串和字符串结束标志
在C 语言中没有专门的字符串变量,没有string 类型,通常用一
个字符数组来存放一个字符串。
前面已经教大家用puts 和printf 函数输出字符串,例如:
puts();
printf(C Language);
在C 语言中,字符串总是以\0作为串的结束符。上面的两个字
符串,编译器已经在末尾自动添加了\0。
\0是ASCII 码表中的第0 个字符,用NUL 表示,称为空字符。
该字符既不能显示,也不是控制字符,输出该字符不会有任何效果,
它在C 语言中仅作为字符串的结束标志。
字符串处理函数遇到NUL 时会认为字符串已经结束,不再继续操
作,例如:
#include stdio.h
int main(){
puts(C Lang\0 is funny!);
return 0;
}
运行结果:
C Lang
可以发现,\0 后面的字符都没有输出。
当把字符串存入字符数组时,也应该把结束符 \0 存入数组,
并以此作为该字符串是否结束的标志。有了\0标志后,就不必再用
字符数组的长度来判断字符串的长度了。
C 语言允许用字符串的方式对数组作初始化赋值。例如:
char c[]={c, ,p,r,o,g,r,a,m};
可写为:
char c[]={C program};
或去掉{}写为:
char c[]=C program;
用字符串方式赋值比用字符逐个赋值要多占一个字节,用于存放
字符串结束标志 \0。上面的数组c 在内存中的实际存放情况为:
\0 是由编译器自动加上的。由于采用了 \0 标志,所以在用
字符串赋初值时一般无须指定数组的长度, 而由编译器自行处理。
字符数组的输入输出
在采用字符串方式后,字符数组的输入输出将变得简单方便。除
了上述用字符串赋初值的办法外,还可用printf 函数和scanf 函数一
次性输出输入一个字符数组中的字符串,而不必使用循环语句逐个地
输入输出每个字符。
【示例】使用printf 输出整个字符数组。
#include stdio.h
int main(){
char c[]=C Lang\nJava\nC++\nPython;
printf(%s\n, c);
return 0;
}
运行结果:
C Lang
Java
您可能关注的文档
- Criteria及MyBatis学习总结.pptx
- CRP及hs-CRP,一种蛋白的“分身术”.pdf
- 气压传动基本回路(第6篇).pdf
- 气压基本及常用回路.ppt
- 汽车安全及节能国家重点实验室(清华).doc
- 汽车变速箱壳体成形工艺分析和模具设计.pdf
- 汽车测试假人用于实验测试方法.pdf
- 汽车车身结构及设计(免费下载).doc
- CT序列医学图像交互式分割系统的设计及实现.pdf
- 汽车车身设计-第二节.ppt
- [中央]2023年中国电子学会招聘应届生笔试历年参考题库附带答案详解.docx
- [吉安]2023年江西吉安市青原区总工会招聘协理员笔试历年参考题库附带答案详解.docx
- [中央]中华预防医学会科普信息部工作人员招聘笔试历年参考题库附带答案详解.docx
- [保定]河北保定市第二医院招聘工作人员49人笔试历年参考题库附带答案详解.docx
- [南通]江苏南通市崇川区人民法院招聘专职人民调解员10人笔试历年参考题库附带答案详解.docx
- [厦门]2023年福建厦门市机关事务管理局非在编工作人员招聘笔试历年参考题库附带答案详解.docx
- [三明]2023年福建三明市尤溪县招聘小学幼儿园新任教师79人笔试历年参考题库附带答案详解.docx
- [哈尔滨]2023年黑龙江哈尔滨市木兰县调配事业单位工作人员笔试历年参考题库附带答案详解.docx
- [上海]2023年上海市气象局所属事业单位招聘笔试历年参考题库附带答案详解.docx
- [台州]2023年浙江台州椒江区招聘中小学教师40人笔试历年参考题库附带答案详解.docx
最近下载
- 第15课 两次鸦片战争 教学课件(共31张PPT)高中历史人教统编版中外历史纲要上册.pptx VIP
- 电子课件-《GSP实务教程》课题七.pptx VIP
- 电机与电气控制技术 任务后练习题参考答案 赵红顺 .pdf
- PEP人教版小学英语六年级下册教案 全册.pdf VIP
- [北京]2024年北京市文物局局属事业单位招聘笔试历年参考题库附带答案详解.docx
- 【课件】平移(课件)人教版(2024)数学七年级下册.pptx VIP
- 电子课件-《GSP实务教程》课题六.pptx VIP
- 部编版道德与法治五年级下册《读懂彼此的心》练习题.docx VIP
- 《研学旅行课程设计》课件——研学课程方案设计.pptx VIP
- 《Lagrange中值定理.ppt
文档评论(0)