娶老婆的第二天

本文介绍了C语言中的字符和ASCII编码,展示了如何用ASCII打印字符,以及字符串的概念、转义字符的使用和C语言中的不同语句类型,如空语句、表达式语句、函数调用、复合语句和控制语句,特别是条件判断和循环结构。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 字符和ASCII编码

字符:能在键盘上敲出来的字母、数字、字和符号。eg:a,b,w,#,@。在C语言中字符是被单引号括起来的。用%c来指定打印字符。

ASCII编码:C语言字符遵循的编码方式。字符在计算机中以二进制形式存储,为了规范二进制和字符之间的对应关系,美国国家标准协会出台的标准。

可以用ASCII打印字符

int main()
{
	printf("%c\n", 'Q');
	printf("%c\n", 81);//这里的81是Q对应的ASCII编码值
	return 0;
}

用ASCII打印可打印字符

int main()
{
	int num = 0;
	for (num = 32; num <= 127; num++)
	{
		printf("%c",num);
		if (num % 16 == 15)
		{
			printf("\n");
		}


	}
	return 0;
}

 2 字符串和\0

字符串:数字、字母、下划线组成的一串字符,一般用双引号括起来。C语言中也可以把一个字符串放在一个字符数组中,但也需要用双引号括起来。eg:"abhydjawbc"。在字符串的结尾有一个转义字符"\0 ",这是字符串结束的标志,所有在使用printf()打印字符,strlen()计算字符长度时,遇到\0会自动停止。

字符串的打印格式用%s来指定,也可以直接打印:

int main()
{
	printf("%s\n", "hello world");
	printf("hello world");

	return 0;
}

我们可以用下面代码验证"\0"的功能

int main()
{
	char arr1[] = { 'a', 'b', 'c' };//数组中存放三个字符
	char arr2[] = "abc";//数组中存放字符串
	printf("%s\n", arr1);
	printf("%s\n", arr2);

	return 0;
}

运行结果为:abc烫烫烫烫烫烫烫烫烫烫烫烫烫烫蘟bc
abc。在这里可以发现,在打印arr1时会有一些随机值,因为在末尾没有\0作为结束标志,在"abc"打印完成后,计算机会继续向后打印,直到在某个位置遇到"\0"才停止打印。arr2中,隐藏着"\0",可以正常打印。如果使arr1可以正常打印,则需要人为的在arr1数组中单独的放一个"\0"。

3 转义字符

转义字符:转变原来意思的字符。“\”像一个滑铲,一个滑铲,把人由站立状体变成横躺状态,改变了他的姿势。

  • \?:在以前的编译器中,连续写多个问号会被解析成三字母词。eg:“??)”会被解析成“】”
  • \':在C语言中,两个'构成一个字符,使用printf时不能单独打印',此时需要转义字符\转义。
  • \":与“\'”类似,用于表示一个字符串内部的双引号。
  • \\:转义转义字符,转义字符变为普通的反斜杠,不会被解释为转义字符序列号。
  • \b:退格,光标退回一个字符,但不删除字符,退回后再继续打印时会覆盖原先位置的字符。
  • \n:换行符。
  • \r:回车符,光标移到同一行的开头。继续打印时会覆盖原先的字符。
  • \t:制表符,光标移到下一个水平制表位,通常是8的倍数
  • \v:垂直分隔符,光标移到下一个垂直制表位。
  • \ddd:ddd表示1~3个八进制数,eg:\130表示字符X。
  • \xdd:dd表示两个十六进制数字,eg:\x30表示字符0。

4 语句和分类

C语言中语句可五类:空语句,表达式语句,函数调用语句,符合语句,控制语句

4.1 空语句

空语句:需要一条语句,但不需要做任何事情。一个分号就是一个空语句。

int main()
{

	;//空语句
	return 0;
}

4.2 表达式语句

表达式语句:在表达式后面加分号的语句。

int main()
{
	int a = 10, b = 20;
	b = a + 9;
	printf("%d\n", b);//表达式语句

	return 0;
}

4.3 函数调用语句

函数调用语句:函数调用时也会加上分号。

int Add(int x, int y)
{
	return x + y;
}
int main()
{
	printf("hello\n");//函数调用语句
	int ret = Add(2, 3);//函数调用语句
	return 0;
}

4.4 复合语句

复合语句:成对括号中的代码构成的代码块。

void print(int arr[], int sz)//函数大括号中的代码也构成复合语句
{
	int i = 0;
	for (i = 0; i < sz; i++)
	{
		printf("%d\n", arr[i]);


	}

}
int main()
{
	int i = 0;
	int arr[10] = { 0 };
	for (i = 0; i < 10; i++)//for循环体的大括号中也是复合语句
	{
		arr[i] = 10 - i;
		printf("%d\n", arr[i]);
	}
	return 0;
}

4.5 控制语句

控制语句:控制程序执行流程,包括顺序结构、选择结构、循环结构。C语言中有9中控制语句,可分为三类

条件判断语句:if语句,switch语句。

循环执行语句:do while语句,while语句,for语句。

转向语句:break语句,goto语句,continue语句,return语句。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值