C语言期末复习不挂科(快速入门)(和bug郭一起学C系列1)(2)

简介: C语言期末复习不挂科(快速入门)(和bug郭一起学C系列1)(2)

字符串(“\0”)

" Hello world"

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


顾名思义字符串就是一串字符

C语言没有这种类型,所以通常存放在数组中


//字符
    char ch='w'; 
 //字符串
    char arr1[]={ 'H','e','l','l','o'};
    char arr2[]="hello";

字符串的结束标志’\0’;

注:字符串的结束标志是一个\0的转义字符。

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

image.png

可以直观看到字符串arr2内有6个字符,而字符数组只有5个字符

image.png

打印arr1和arr2时因为打印函数遇到‘\0’才会停止打印

所以arr1在后面找了很久才遇到’\0’所以Hello后面都是随机值


那‘\0’算字符串长度吗?

image.png

strlen计算字符串长度函数遇到’\0’计算结束

arr1找了31个字符才找到结束标志‘\0’

所以‘\0’并不算字符串长度

总结

字符串的结束标志是一个\0的转义字符。

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


转义字符

当你要打印你的文件路径时

image.png

就很迷,为什么这样呢?

这是就要提到转义字符这个概念了

难道转义字符是转变了该字符的本来意思?

下面看一些转义字符

image.png

转义字符的使用

image.png

看了转义字符成功打印了正确的路径

自己可以去试试


C注释

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

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

image.png



注释有两种风格:C语言风格的注释/xxxxxx/

缺陷:不能嵌套注释

C++风格的注释//xxxxxxxx可以注释一行也可以


VS默认c++风格

注释快捷键

image.png


选择(分支)语句

我们先来认识一下最简单的选择语句

eg:如果好好写博客,你就能获得粉丝,不写博客就没得粉丝!

if else 语句 如果 否者

image.png

怎么用带吗实现呢?

上代码

int main()
 {  
    int blog=0;
    scanf("你会好好写100篇博客>1\0");
    if(blog==100)
    {
    printf("收获粉丝\n");
    }
    else
    {
    printf("没有粉丝\n");
    }
    return 0;
 }

循环语句

有些事必须一直做,比如我要日复一日的写博客,比如大家,日复一日的学习。

for 循环

while循环

do while 循环

我们在拿上面的代码举例

用while循环实现


int main()
 {  
    int blog=0;
    printf("你会好好写100篇博客>1\0");
   while(blog<100)//当blog<100进入循环
    {
        blog++;   //blog数加一
      printf("再写一遍博客\n");
    }
      //循环结束来到这
      printf("很多粉丝\n");
     return 0;
 }

函数

函数是一个自我包含的完成一定相关功能的执行代码段。我们可以把函数看成一个“黑盒子”,你只要将数据送进去就能得到结果,而函数内部究竟是如何工作的,外部程序是不知道的。


函数了解

还记得我们一开始写的这个程序吗?

让我们先从main函数开始吧


int main()   
{
return 0;
}

函数名:main是函数名,函数名一般自己书写,就像创建变量一样

参数:()里面可以输入参数,参数由类型名和变量名组成, 因为main函数的参数为空(void)可以省略

返回值:返回值即是这个函数可以返回某些量 比如 int 说明这个函数最后会返回一个int的量,retun 0 说明该函数的返回值为0;某些函数不需要返回值 写成void

函数体:{ }里面的内容便是函数体,由很多语句构成


我们已经认识到了上面这个便是主函数,那我们自己尝试写一个函数



int Add(int x,int y)   //实现加法功能的函数  
   {   //函数体
      return x+y;//返回x+y的和
   }   
int main()
{
    int a=0,b=0,sum=0;
       sum=Add(a,b);  //调用该函数
}

学到这里,想必你已经对函数有了一定的了解

那就够了,哈哈哈其实博主现在也就只会这点点

数组

数组(Array)是有序的元素序列。 [1] 若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。用于区分数组的各个元素的数字编号称为下标。数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按有序的形式组织起来的一种形式。 [1] 这些有序排列的同类数据元素的集合称为数组。


数组是用于储存多个相同类型数据的集合。


int arr[5]={1,3,4,5};//int指数组类型是int
                      // arr是数组名
                      // [5]是数组长度
  char ch[]={'a','b','c'};//初始化时数组类型也可省略

image.png

你是否注意点arr数组并不是从1开始而是从0开始

一开始初始化的arr[10]只是定义数组长度为10

而后面对数组的存放则是从0开始到9 ,10个数。


切记不可越界 对arr[ 10]进行操作是错误的。

目录
相关文章
|
2月前
|
存储 编译器 C语言
C语言难?深度剖析第一段C语言代码—带你快速入门C语言
C语言难?深度剖析第一段C语言代码—带你快速入门C语言
42 0
|
2月前
|
机器学习/深度学习 人工智能 C语言
【c语言基础题】— —第五版,可当作日常练习和期末复习,有奇效哟!
【c语言基础题】— —第五版,可当作日常练习和期末复习,有奇效哟!
42 1
|
2月前
|
算法 Java C语言
【c语言基础题】— —第一版,可当作日常练习和期末复习,有奇效哟!
【c语言基础题】— —第一版,可当作日常练习和期末复习,有奇效哟!
78 0
|
2月前
|
程序员 C语言 CDN
【c语言基础题】— —第三版,可当作日常练习和期末复习,有奇效哟!
【c语言基础题】— —第三版,可当作日常练习和期末复习,有奇效哟!
80 0
|
1月前
|
存储 编译器 C语言
【C语言期末不挂科——指针进阶篇】【上】
【C语言期末不挂科——指针进阶篇】【上】
|
2月前
|
人工智能 网络协议 BI
【c语言基础题】— —第七版,可当作日常练习和期末复习,有奇效哟!
【c语言基础题】— —第七版,可当作日常练习和期末复习,有奇效哟!
20 0
|
2月前
|
人工智能 网络协议 BI
【c语言基础题】— —第六版,可当作日常练习和期末复习,有奇效哟!
【c语言基础题】— —第六版,可当作日常练习和期末复习,有奇效哟!
24 0
|
2月前
|
C语言 wax
【c语言基础题】— —第四版,可当作日常练习和期末复习,有奇效哟!
【c语言基础题】— —第四版,可当作日常练习和期末复习,有奇效哟!
90 0
|
2月前
|
机器学习/深度学习 C语言
【c语言基础题】— —第二版,可当作日常练习和期末复习,有奇效哟!
【c语言基础题】— —第二版,可当作日常练习和期末复习,有奇效哟!
81 0
|
3月前
|
C语言
C语言部分期末答案(来自PTA)
C语言部分期末答案(来自PTA)