- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章数组解析
4.5.1 字符数组的定义和引用 定义 一维字符数组: char 数组名 [常量表达式] ; char a[5]; 二维字符数组: char 数组名 [常量表达式1] [常量表达式2]; char b[2][3]; 三维字符数组: char 数组名 [常量表达式1] [常量表达式2] … [常量表达式n] ; 一维字符数组元素赋值 : a[3]=‘a’; 二维字符数组元素赋值 : b[1][2]=‘b’; 4.5.2 字符数组的初始化 全部初始化 char a[3]={‘c’,’+’, ’+’}; char a[ ]={‘c’,’+’, ’+’}; 可省去长度 部分初始化 char a[5]= {‘c’,’+’, ’+’}; 其余的元素自动赋为空字符(‘\0’) 字符串方式赋值 char a[ ]={‘c’,’+’, ’+’};可写为 char a[ ]={“c++”};或 char a[ ]=“c++”; 4.5.3 字符数组的输入输出 (1) 逐个字符输入输出,用格式符%c。 例: for(i = 0; i 10; i++) scanf(”%c”, c[i]) ; for(i = 0; i 10; i++) printf(”%c”, c[i]) ; (2) 将整个字符串一次输入或输出。用格 式符%s。 char s[10] ; scanf(”%s”, s) ; 【例4-7】 用格式符%s输入输出字符串。 4.5.3 字符数组的输入输出 #include stdio.h int main( ) { char s[15]; printf(”Input a string:\n”); scanf(”%s”, s); printf(”%s\n”, s); return 0; } 运行结果如下: This is a book↙ This 【例4-8】 输出一个字符串(”Welcome to Beijing!”)。 4.5.3 字符数组的输入输出 #include stdio.h int main( ) { char c[20] = ”Weclome to Beijing!”; int i; for(i = 0; c[i] != ’\0’; i++) printf(”%c”, c[i]); return 0; } 运行结果如下: Welcome to Beijing! 4.5.4 字符串处理函数 (1) 字符串输出函数 puts( ) puts(字符数组名) 或 puts(字符串常量) 功能:把字符数组中的字符串输出到终端,并 在输出时将字符串结束标志’\0’转换成’\n’。 (2) 字符串输入函数gets( ) gets(字符数组名) 功能:接收从终端输入的字符串,并将该字符串 存放到字符数组名所指定的字符数组中。 4.5.4 字符串处理函数 (3) 字符串连接函数strcat( ) strcat(字符数组名1,字符数组名2 或 字符串常量) 功能:把字符数组2中的字符串连接到字符数组1 中字符串的后面,并删去字符数组1中字符 串后面的串结束标志’\0’。 (4) 字符串复制函数strcpy( ) strcpy(字符数组名1,字符数组名2 或 字符串2) 功能:把字符数组2中的字符串复制到字符数组1 中。串 结束标志’\0’也一同复制。。 4.5.4 字符串处理函数 (5) 字符串比较函数strcmp( ) strcmp(字符串1,字符串2) 功能:按照ASCII码值的大小逐个比较两个字符串 的对应字符,直到值不相等或遇到’\0’时结 束比较。 (6) 测字符串长度函数strlen( ) strlen(字符串) 功能:计
文档评论(0)