【从0开始C语言(自学记录)】字符数组

目录

一、字符数组:

(一)字符数组的初始化:

(二)字符数组的输入输出:

二、字符串:

字符串处理函数:  

1、输入输出

2、strcat函数---字符串连接函数:(返回地址)

3、strcpy和strncpy函数----字符串复制函数:(返回地址)

4、strcmp函数---字符串比较函数: (返回数)

5、strlen函数---测字符串长度的函数:


一、字符数组:

1、定义:字符数组是用来存放字符数据的数组。

2、C语言中没有字符串变量,那如何存储字符串呢?

①字符数组来存放 ②字符型指针变量

(一)字符数组的初始化:

与其他类型方法一样:

类型名 数组名[常量表达式]=初始化列表;
  1. 如果在定义字符数组时不进行初始化,则数组中各元素的值是不可预料的。
  2. 如果花括号中提供的初值个数(即字符个数)大于数组长度,则出现语法错误。
  3. 如果初值个数小于数组长度,则只将这些字符赋给数组中前面那些元素,其余的元素自动定为空字符(即'\0'
  4. 如果提供的初值个数与预定的数组长度相同,在定义时可以省略数组长度,系统会自动根据初值个数确定数组长度,用这种方式可以不必人工去数字符的个数,尤其在赋初值的字符个数较多时比较方便。

用字符串给一个字符数组进行初始化有四种情况:

char a[ ]="abcd";
char a[ ]={"abcd"};
char a[ ]={'a','b','c','d','\0'};
char *a="abcd";

(二)字符数组的输入输出:

1、逐个字符输入输出,用格式符“%c"输入或输出一个字符,如:

#include <stdio.h>
//输出一个已知的字符串
int main()
{
	char c[15] = { 'I',' ','a','m',' ','a',' ','s','t','u','d','e','n','t','.' };
	int i;
	for (i = 0; i < 15; i++)
	{
		printf("%c", c[i]);
	}
	printf("\n");
	return 0;
}

#define _CRT_SECURE_NO_WARNINGS  //scanf安全问题解决 或用 #pragma warning(disable:4996)
#include <stdio.h>

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

  

 2、将整个字符串一次输入或输出,用"%s"格式符,如:

#include <stdio.h>

int main()
{
	char c[15] = { "China"};
	printf("%s", c);
	return 0;
}

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一定能学会!!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值