c语言程序设计第七章数组,最新C语言程序设计第七章数组.ppt

最新C语言程序设计第七章数组.ppt

7.2 字符数组与字符串 字符串数组的初始化 即在定义字符串数组的同时进行赋值。有两种方法。 用字符常量初始化数组,例如: char str[6]={ ‘ C’, ‘ h’, ‘i’, ‘ n’, ‘ a’, ‘ \0’ }; 用花括号括将赋值的字符常量括起来。数组str[6]被初始化为: “ China ”。 用字符串常量初始化数组,例如: char string[6]=“China”;  用字符串常量初始化数组时, 可不用花括号。若字符个数少于数组长度,程序都自动在末尾字符后加‘\0’。 7-* 7.2 字符数组与字符串 用字符串常量初始化时,字符数组的下标也可以省略,其数组存放字符的个数由赋值的字符串的长度决定。 例如: char str[ ] = {“1a2b3c”}; 等价于 char str[7] = {“1a2b3c”}; 初始化时,若字符个数与数组长度相同,则字符末尾不加‘\0’,此时字符数组不能作为字符串处理,只能作字符逐个处理。初始化时是否加‘\0’要看是否作为字符串处理。 7-* 7.2 字符数组与字符串 字符串处理函数 C 语言标准库函数中, 提供了大量字符串的操作函数, 包括: 字符型数组的输入/输出函数和字符串处理函数 字符型数组的输入/输出 用getchar( ) 对字符数组进行键盘输入。调用格式:getchar ( ); 例:char c[15]; for(i=0;i<14;i++) c[i]=getchar( ); getchar( )一次只能从键盘接收一个字符。 用gets( ) 对字符串数组进行键盘输入。格式:gets (字符串数组名);  例:char string[15];  gets(string); 7-* 7.2 字符数组与字符串 用scanf( ) 对字符数组进行赋值。 从键盘读取一个字符:scanf(“%c”, 数组元素地址); 从键盘读取一串字符:scanf(“%s”, 数组名); 例:char c[15]; for(i=0;i<15;i++) scanf(“%c”,&c[i]); // 逐个赋值 例:char c[15]; scanf(“%s”,c); 或 scanf(“%s”,&c[0]) // 成批赋值 当在键盘输入完要输入的字符串时, 字符数组自动包含一个‘ \0 ’结束标志。 scanf ( )的格式要求操作数是地址。但 scanf (“%s”, & c ) ; 的写法是不正确的。此时是字符数组, 对其操作不能加地址运算符号。因为, 字符数组名是字符串第一个字符的地址, 是地址常量。 字符串输入结束标志: 空格、TAB、回车 7-* 7.2 字符数组与字符串 用putchar ( ) 输出字符数组中的内容。putchar (字符名); 例:char c[20]=“Microsoft PowerPoint ”; for(i=0;i<20;i++) putchar(c[i]); putchar( )一次只能向屏幕输出一个字符。 用puts( )输出字符数组中的内容。puts (字符串数组名); 例:char string[11]=“Microsoft”; puts(string); puts函数将字符数组sring中的所有字符输出到屏幕上,遇‘\0’结束。 7-* 7.2 字符数组与字符串 用printf ( ) 输出字符、字符串数组中的内容 输出一个字符:printf(“%c”, 数组元素); 输出一个字符串:printff(“%s”, 数组名); printf ( )语句输出字符串数组时, 可以直接引用字符串数组名。因为, 字符串数组存放的是字符串第一个字符的地址码。遇‘\0’结束! 7-* 7.2 字符数组与字符串 数值型数组和字符数组的输入输出在使用中的区别 数值型数组: int data[4],i; for(i=0;i<4;i++) scanf(“%d”,&data[i]); for(i=0;i<4;i++) printf(“%d ”,data[i]); // 循环输入每一个数组元素 字符数组: char str[20]; scanf(“%s”, str); //变量名前没有取地址符& printf(“%s\n ”,str); //直接输入数组变量变量名 7-* 7.2 字符数组与字符串 例 将从键盘上输入的字符串的小写字符变成大写字符, 并输出。 设:输入的字符串存入字符数组string[ ]中。 #include “stdio

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值