初识C语言(二)

目录

字符串+转义字符+注释

(1)字符串

(2)转义字符

(3)注释

选择语句

循环语句

函数

数组

(1)数组定义

(2)数组的使用


字符串+转义字符+注释

(1)字符串

"hello world.\n"

这种由双引号(double Quote)引起来的一串字符称为字符串字面值(String Literal),或者简称字符串

注:字符串的结束标志是一个\0的转义字符。在计算字符串长度的时候\0是结束标志,不算作字符串内容。

//下面这段代码,打印的结果是什么呢?为什么?(突出'\0'的重要性)

#include<stdio.h>
int main()
{
	char arr1[] = "bit";
	char arr2[] = { 'b', 'i', 't' };
	char arr3[] = { 'b', 'i', 't', '\0' };
	printf("%s\n", arr1);
	printf("%s\n", arr2);
	printf("%s\n", arr3);

	return 0;
}

 

 通过调用监视窗口我们可以看到arr1与arr3里面存的都是bit加上\0,arr2存的是bit。上面我们也说了字符串的结束标志是\0,所以arr2会继续往后找\0直至找到\0为止才结束。

(2)转义字符

假如我们要在屏幕上面打印一个目录:c:\code\test.c

我们应该如何写代码呢?

//是不是这样呢?
#include<stdio.h>
int main()
{
  printf("c:\code\test.c\n");
  return 0;
}

实际上程序运行的结果却是这样的:

 为什么会这样呢?这里就不得不提一下转义字符了,转义字符顾名思义就是转变意思。

下面来看一些转义字符

转义字符释义
\?在书写多个连续问号时使用,防止他们被解析成三字母词
\'用于表示字符常量'
\"用来表示一个字符串内部的双引号
\\用来表示一个反斜杠,防止它被解释为一个转义序列符
\a警告字符,蝉鸣
\b退格符
\f进纸符
\n换行
\r回车
\t水平制表符
\v垂直制表符
\dddddd表示1-3个八进制数字。如:\130 X
\xdddd表示2给十六进制数字。如:\x30 0

问题1:在屏幕上打印一个单引号',怎么做?

问题2:在屏幕上打印一个字符串,字符串的内容时一个双引号",怎么做?

#include<stdio.h>
int main()
{
	printf("%c\n", '\'');
	printf("%s\n", "\"");

	return 0;
}

下面我们来介绍一个库函数--strlen

strlen是库函数-求字符串长度的,\0是字符串结束标志,不算长度,它的头文件是#include<string.h>

问题3:下面这段程序输出什么?

#include<stdio.h>
#include<string.h>
int main()
{
	printf("%d\n", strlen("abcdef"));
	printf("%d\n", strlen("c:\test\328\test.c"));
	return 0;
}

 我想大家对于第一个6应该没什么问题,可能对于下面的14有点不太明白,接下来我们就来解释14是怎么来的。

为什么\328不算1个而是算两个呢?

因为\ddd表示1-3个八进制数字,但是8不能出现在八进制中所以算两个。 

(3)注释

1.代码中有不需要的代码可以直接删除,也可以注释掉。

2.代码中有些代码比较难懂,可以加一下注释文字。

注释有两种风格:

C语言风格的注释/*xxxxxx*/

缺陷:不能嵌套注释

C++风格的注释//xxxxxx

优点:可以注释一行也可以注释多行

下面就通过代码来解释一下

#include<stdio.h>
int Add(int x, int y)
{
	int z = 0;
	z = x + y;
	return z;
}

/*C语言注释风格
int Sub(int x,int y)
{
 return x-y;
*/

int main()
{
	//C++注释风格
	//int c = 100;
	int a = 10;
	int b = 20;
	int sum = Add(a, b);//调用Add函数完成加法
	printf("%d\n", sum);
	return 0;
}

选择语句

如果你好好学习,校招时拿一个好offer,走上人生巅峰。

如果你不好好学习,毕业等于失业,回家卖红薯。

这就是选择!

下面我们来看一个选择语句的代码

#include<stdio.h>
int main()
{
	int coding = 0;
	printf("你会去敲代码吗?(选择1 or 0):>");
	scanf("%d", &coding);
	if (coding == 1)
	{
		printf("坚持,你会有好offer\n");
	}
	else
	{
		printf("放弃,回家卖红薯\n");
	}
	return 0;
}

循环语句

有些事必须一直做,比如大家,日复一日的学习。

还比如:

C语言中如何实现循环呢?

while语句

for语句(后面讲)

do...while语句 (后面讲)

//while循环的实例
#include<stdio.h>
int main()
{
	int line = 0;
	while (line <= 20000)
	{
		line++;
		printf("我要继续努力敲代码\n");
	}
	if (line > 20000)
	{
		printf("迎娶白富美");
	}
	return 0;
}

函数

#include<stdio.h>
int main()
{
	int num1 = 0;
	int num2 = 0;
	int sum = 0;
	printf("输入两个整数:");
	scanf("%d%d", &num1, &num2);
	sum = num1 + num2;
	printf("%d\n", sum);
	return 0;
}

//上述代码,写成函数如下
#include<stdio.h>
int Add(int x, int y)
{
	int z = x + y;
	return z;
}
int main()
{
	int num1 = 0;
	int num2 = 0;
	int sum = 0;
	printf("输入两个整数:");
	scanf("%d%d", &num1, &num2);
	sum = Add(num1, num2);
	printf("sum = %d\n", sum);
	return 0;
}

简单来说就是让别人帮你去做你本来要执行的操作。

举个例子吧

比如说晚饭我想吃蛋炒饭,但是呢我又不太想出去买,这个时候室友张三在外面,我们可以给他发20元让他帮我们买一份蛋炒饭。

函数的特点就是简化代码,代码复用。

数组

我们都知道将a,b,c分别赋值为10,20,30这样简单,但是假如我们要存储1-20的数字,我们应该怎么存储呢?这个时候我们就得引入一个新的知识--数组。

(1)数组定义

C语言中给了数组的定义:一组相同类型元素的集合

(2)数组的使用

我们通过下面这段代码来看看数组是如何使用的

#include<stdio.h>
int main()
{
	int i = 0;
	int arr[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
	while(i < 10)
	{
		printf("%d ", arr[i]);
		i++;
	}
	return 0;
}

 

好了 本次内容到此结束,如果觉得对你有帮助的话可以点赞关注一波哦! 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值