【笔记】字符数组(接上一篇)

一、字符数组的输入和输出
1.字符数组输入和输出可以和其他数组一样可以单个元素输入和输出,此时采用%c每次输出一个字符
例:

char c[5];
int i;
for(i=0;i<5:i++);
{
	scanf("%c",&c[i]);
}
for(i=0;i<5;i++)
{
	printf("%c",c[i]);
}

2.采用%s格式符,每次输入或输出一个字符串。
例:

char ch[5];
scanf("%s",ch);
printf("%s",ch);

使用%s输出字符串时注意:
①使用%s输入字符串时,scanf()函数遇到空格和回车就结束本次输入
②使用scanf()直接写数组的地址名,不需要用&
③用%s输出的字符串时,printf()函数中输出的时祖父数组名,而不是数组元素名,写成printf("%s",c[0]); 是不对的
④用%s输出字符数组时,要确保数组中要又 \0否则会出现乱码
⑤用%s输入时,系统会自动输入的字符后添加结束符\0
3.使用输入函数gets()和输出函数puts()来输入输出
例:(举个例子很好明白)

#include<stdio.h>
int main ()
{
	char a[6];
	printf("输入字符串\n");
	gets(a);//输入
	puts(a);输出
	return 0;
}

与scnaf不同,gets函数不以空格来作为字符串输入的结束标志,只以回车作为结束标记。与%s类似,会在结束时再末尾添加\0
二、常见字符串的处理函数
使用其他字符串函数要包含头文件string.h

#include<string.h>

1.strcmp()函数 比较
格式strcmp(字符数组名1,字符数组名2)
功能:按照ASCII码顺序比较两数组中字符串,并由函数返回比较结果
①字符串1=字符串2,返回=0
②字符串1>字符串2,返回>0
③字符串1<字符串2,返回<0
2.strcat()函数 连接
格式:strcat(字符数组名1,字符数组名2)
功能:把字符数组2链接到字符数组1的后边,并删除字符数组1结尾的\0。返回值是字符数组1的首地址.
3.strcpy()函数 复制
格式:strcpy(字符数组1,字符数组2)
功能:把字符数组2的字符串复制到字符数组1中。结束标志\0也复制。字符数组2,也可以是字符常量,这等于把一个字符串赋予一个字符数组。注意:要求字符数组1中的长度要足够长,否则不能全部复制
4.strlen()函数 测量
格式:strlen(字符数组名)
功能:测量字符数组的实际长度,不含结束标语\0


这就是我写的一些笔记内容了,有不足的地方欢迎大佬指出!!!最后感谢各位大佬看到这里,如果你喜欢这篇文章的话,求赞求收藏求评论指点,谢谢谢谢谢谢!

ps:因为前段时间再复习考试,所以一直没有更新学习笔记,多多包涵,谢谢大家!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值