分享
分销 收藏 举报 申诉 / 7
播放页_导航下方通栏广告

类型2026年专升本C语言指针高级应用专题卷附答案解析与动态内存.docx

  • 上传人:x****s
  • 文档编号:12619107
  • 上传时间:2025-11-12
  • 格式:DOCX
  • 页数:7
  • 大小:14.93KB
  • 下载积分:15 金币
  • 播放页_非在线预览资源立即下载上方广告
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    2026 年专升 语言 指针 高级 应用 专题 答案 解析 动态 内存
    资源描述:
    2026年专升本C语言指针高级应用专题卷附答案解析与动态内存 一、单选题(共20题) 1:以下关于指针的描述,正确的是: A. 指针是存储在内存中地址的变量。 B. 指针变量不能被赋值为NULL。 C. 指针只能指向数组。 D. 指针变量不需要进行初始化。 答案:A 解析:正确选项A,因为指针是存储变量地址的变量。选项B错误,指针可以被赋值为NULL,表示它不指向任何有效地址。选项C错误,指针不仅可以指向数组,还可以指向任何类型的变量。选项D错误,指针变量需要通过初始化赋值来指定它所指向的地址。 2:以下关于动态内存分配的描述,正确的是: A. 使用malloc函数分配的内存需要手动释放。 B. 使用calloc函数分配的内存不需要初始化。 C. 使用new运算符分配的内存不能在堆上释放。 D. 使用free函数释放的内存会自动回收。 答案:A 解析:正确选项A,使用malloc函数分配的内存需要通过free函数手动释放,否则会造成内存泄漏。选项B错误,calloc函数分配的内存是初始化过的。选项C错误,使用new运算符分配的内存可以通过delete运算符在堆上释放。选项D错误,free函数释放的内存不会自动回收,但会标记为可用。 3:以下关于指针数组的描述,正确的是: A. 指针数组是指针的数组,每个元素都是指针。 B. 指针数组中的每个元素都可以指向不同类型的变量。 C. 指针数组只能指向同一类型的变量。 D. 指针数组的元素不能进行解引用操作。 答案:A 解析:正确选项A,指针数组是指针的数组,每个元素都是指针。选项B错误,指针数组中的元素可以指向不同类型的变量,但通常用于指向同一类型的多个变量。选项C错误,指针数组的元素可以指向不同类型的变量。选项D错误,指针数组的元素可以进行解引用操作。 4:以下关于结构体与指针的描述,正确的是: A. 结构体指针可以指向结构体变量,但不能指向结构体数组。 B. 结构体指针可以指向结构体数组,但不能指向结构体指针数组。 C. 结构体指针可以指向结构体变量和结构体数组。 D. 结构体指针不能指向结构体。 答案:C 解析:正确选项C,结构体指针可以指向结构体变量和结构体数组。选项A错误,结构体指针可以指向结构体数组。选项B错误,结构体指针可以指向结构体指针数组。选项D错误,结构体指针可以指向结构体。 5:以下关于函数指针的描述,正确的是: A. 函数指针可以指向任何类型的函数。 B. 函数指针必须指向返回类型相同的函数。 C. 函数指针不能指向静态函数。 D. 函数指针必须指向返回类型为void的函数。 答案:A 解析:正确选项A,函数指针可以指向任何类型的函数。选项B错误,函数指针可以指向返回类型不同的函数。选项C错误,函数指针可以指向静态函数。选项D错误,函数指针可以指向返回类型为任何类型的函数。 6:以下关于函数指针与回调函数的描述,正确的是: A. 回调函数是指函数指针作为参数传递给其他函数的函数。 B. 回调函数必须具有与主函数相同的参数列表。 C. 回调函数不能返回任何值。 D. 回调函数不能在主函数之外定义。 答案:A 解析:正确选项A,回调函数是指函数指针作为参数传递给其他函数的函数。选项B错误,回调函数的参数列表可以与主函数不同。选项C错误,回调函数可以返回任何值。选项D错误,回调函数可以在主函数之外定义。 7:以下关于指针数组与函数指针的描述,正确的是: A. 指针数组与函数指针是相同的概念。 B. 指针数组与函数指针都是数组,但元素类型不同。 C. 指针数组与函数指针都不是数组。 D. 指针数组与函数指针都是指针,但指向的对象不同。 答案:B 解析:正确选项B,指针数组与函数指针都是数组,但元素类型不同。指针数组的元素是普通指针,而函数指针的元素是指向函数的指针。选项A错误,指针数组和函数指针不是相同的概念。选项C错误,指针数组和函数指针都是数组。选项D错误,指针数组和函数指针都是指针,指向的对象类型不同。 8:以下关于指针与数组的描述,正确的是: A. 数组名可以作为指针使用。 B. 指针名可以作为数组使用。 C. 指针与数组不能相互转换。 D. 指针与数组必须具有相同的元素类型。 答案:A 解析:正确选项A,数组名可以作为指针使用,指向数组的第一个元素。选项B错误,指针名不能作为数组使用。选项C错误,指针与数组可以相互转换。选项D错误,指针与数组不需要具有相同的元素类型。 9:以下关于指针数组的描述,正确的是: A. 指针数组的每个元素都是指针。 B. 指针数组的每个元素都可以指向不同类型的变量。 C. 指针数组的元素不能进行解引用操作。 D. 指针数组的元素只能指向数组。 答案:A 解析:正确选项A,指针数组的每个元素都是指针。选项B错误,指针数组的元素可以指向不同类型的变量。选项C错误,指针数组的元素可以进行解引用操作。选项D错误,指针数组的元素可以指向不同类型的变量。 10:以下关于指针与结构体的描述,正确的是: A. 结构体指针可以指向结构体变量,但不能指向结构体数组。 B. 结构体指针可以指向结构体数组,但不能指向结构体指针数组。 C. 结构体指针可以指向结构体变量和结构体数组。 D. 结构体指针不能指向结构体。 答案:C 解析:正确选项C,结构体指针可以指向结构体变量和结构体数组。选项A错误,结构体指针可以指向结构体数组。选项B错误,结构体指针可以指向结构体指针数组。选项D错误,结构体指针可以指向结构体。 11:以下关于指针与函数的描述,正确的是: A. 函数指针可以指向任何类型的函数。 B. 函数指针必须指向返回类型相同的函数。 C. 函数指针不能指向静态函数。 D. 函数指针必须指向返回类型为void的函数。 答案:A 解析:正确选项A,函数指针可以指向任何类型的函数。选项B错误,函数指针可以指向返回类型不同的函数。选项C错误,函数指针可以指向静态函数。选项D错误,函数指针可以指向返回类型为任何类型的函数。 12:以下关于指针与字符串的描述,正确的是: A. 字符串是常量指针,不能修改。 B. 字符串是可变指针,可以修改。 C. 字符串既不是常量指针也不是可变指针。 D. 字符串可以指向不同类型的变量。 答案:A 解析:正确选项A,字符串是常量指针,指向的地址不能改变,只能通过指针来访问字符串。选项B错误,字符串是不可变的。选项C错误,字符串是常量指针。选项D错误,字符串只能指向字符串类型的变量。 13:以下关于指针与递归函数的描述,正确的是: A. 递归函数不能使用指针。 B. 递归函数可以使用指针,但不能修改参数。 C. 递归函数可以使用指针,并且可以修改参数。 D. 递归函数不能返回指针。 答案:C 解析:正确选项C,递归函数可以使用指针,并且可以修改参数。选项A错误,递归函数可以使用指针。选项B错误,递归函数可以修改参数。选项D错误,递归函数可以返回指针。 14:以下关于指针与动态内存分配的描述,正确的是: A. 使用malloc函数分配的内存不需要初始化。 B. 使用calloc函数分配的内存需要进行初始化。 C. 使用new运算符分配的内存需要进行初始化。 D. 使用free函数释放的内存会自动回收。 答案:C 解析:正确选项C,使用new运算符分配的内存需要进行初始化。选项A错误,使用malloc函数分配的内存不需要初始化。选项B错误,使用calloc函数分配的内存是初始化过的。选项D错误,free函数释放的内存不会自动回收,但会标记为可用。 15:以下关于指针与数组元素访问的描述,正确的是: A. 数组名可以作为指针使用,但不能进行解引用操作。 B. 数组名可以作为指针使用,并且可以进行解引用操作。 C. 数组名不能作为指针使用,但可以通过下标访问元素。 D. 数组名可以作为指针使用,但不能通过下标访问元素。 答案:B 解析:正确选项B,数组名可以作为指针使用,并且可以进行解引用操作。选项A错误,数组名可以作为指针使用,并且可以进行解引用操作。选项C错误,数组名可以通过下标访问元素,但不能作为指针使用。选项D错误,数组名可以作为指针使用,并且可以进行解引用操作。 16:以下关于指针与函数参数的描述,正确的是: A. 函数参数传递时,指针是值传递。 B. 函数参数传递时,指针是引用传递。 C. 函数参数传递时,指针是地址传递。 D. 函数参数传递时,指针是值传递和地址传递的混合。 答案:C 解析:正确选项C,函数参数传递时,指针是地址传递。选项A错误,指针传递的是地址。选项B错误,指针不是引用传递。选项D错误,指针是地址传递,不是值传递和地址传递的混合。 17:以下关于指针与数组下标的描述,正确的是: A. 数组下标是从0开始的整数。 B. 数组下标是从1开始的整数。 C. 数组下标不能为负数。 D. 数组下标可以是任何整数。 答案:A 解析:正确选项A,数组下标是从0开始的整数。选项B错误,数组下标是从0开始的。选项C错误,数组下标可以是负数,但通常不建议使用。选项D错误,数组下标必须是整数。 18:以下关于指针与结构体成员访问的描述,正确的是: A. 结构体成员可以通过指针直接访问。 B. 结构体成员只能通过结构体变量访问。 C. 结构体成员可以通过指针和结构体变量访问。 D. 结构体成员不能通过指针访问。 答案:C 解析:正确选项C,结构体成员可以通过指针和结构体变量访问。选项A错误,结构体成员不能通过指针直接访问。选项B错误,结构体成员可以通过指针访问。选项D错误,结构体成员可以通过指针访问。 19:以下关于指针与字符串比较的描述,正确的是: A. 字符串比较是通过指针进行的。 B. 字符串比较是通过字符串的元素逐个比较进行的。 C. 字符串比较是通过指针和字符串的元素逐个比较进行的。 D. 字符串比较是通过指针和字符串的长度比较进行的。 答案:C 解析:正确选项C,字符串比较是通过指针和字符串的元素逐个比较进行的。选项A错误,字符串比较不是通过指针进行的。选项B错误,字符串比较不仅仅是通过元素逐个比较。选项D错误,字符串比较不是通过指针和长度比较进行的。 20:以下关于指针与指针运算的描述,正确的是: A. 指针可以与整数进行加减运算。 B. 指针可以与指针进行加减运算。 C. 指针只能与整数进行运算。 D. 指针不能进行任何运算。 答案:A 解析:正确选项A,指针可以与整数进行加减运算,表示指针移动到指定的位置。选项B错误,指针不能与指针进行加减运算。选项C错误,指针不仅可以与整数运算,还可以进行其他运算。选项D错误,指针可以进行运算。 二、多选题(共10题) 21:在C语言中,以下哪些操作会改变指针所指向的地址? A. 指针赋值 B. 指针自增 C. 指针自减 D. 解引用指针 E. 指针与整数相加 答案:BCE 解析:正确选项B、C和E。指针自增(B)和自减(C)会改变指针所指向的地址,因为它们将指针移动到数组中的下一个或上一个元素。指针与整数相加(E)也会改变指针的地址,因为它将指针向前或向后移动指定数量的元素。指针赋值(A)和解引用指针(D)不会改变指针的地址,而是指向另一个地址或访问指针所指向的值。 22:以下哪些情况下,使用malloc、calloc和free函数分配和释放内存是安全的? A. 在使用完动态分配的内存后,始终使用free函数释放内存。 B. 使用malloc和calloc分配内存后,不需要考虑内存释放。 C. 在使用malloc和calloc分配内存后,可以使用delete运算符释放内存。 D. 如果内存分配失败,malloc和calloc返回NULL指针。 答案:AD 解析:正确选项A和D。在使用完动态分配的内存后,始终使用free函数释放内存是安全的(A)。如果内存分配失败,malloc和calloc返回NULL指针(D),这时应该检查返回值以避免解引用空指针。选项B错误,因为即使使用malloc和calloc分配内存,也应该在使用后释放它们。选项C错误,因为delete运算符用于C++中的动态内存管理,而不是C语言。 23:以下关于指针与数组的关系,哪些描述是正确的? A. 数组名可以作为指针使用。 B. 指针可以指向数组的某个元素。 C. 指针可以指向数组的开始地址。 D. 指针可以指向数组之外的内存地址。 答案:ABC 解析:正确选项A、B和C。数组名可以作为指针使用,指向数组的第一个元素(A)。指针可以指向数组的某个元素(B),也可以指向数组的开始地址(C)。选项D错误,指针不应该指向数组之外的内存地址,这可能会导致未定义行为。 24:以下关于函数指针和回调函数的哪些说法是正确的? A. 函数指针可以指向任何类型的函数。 B. 回调函数是作为参数传递给其他函数的函数。 C. 回调函数必须在主函数之前定义。 D. 回调函数可以返回任何类型的值。 答案:ABD 解析:正确选项A、B和D。函数指针可以指向任何类型的函数(A)。回调函数是作为参数传递给其他函数的函数(B)。回调函数可以返回任何类型的值(D)。选项C错误,回调函数可以在主函数之前或之后定义。 25:以下哪些操作会导致指针解引用时的未定义行为? A. 解引用未初始化的指针。 B. 解引用空指针。 C. 解引用指向数组的越界指针。 D. 解引用指向已释放内存的指针。 答案:ABCD 解析:所有选项A、B、C和D都会导致指针解引用时的未定义行为。解引用未初始化的指针(A)和空指针(B)可能会导致程序崩溃或不可预测的行为。解引用指向数组的越界指针(C)会导致访问数组外的内存,同样是不安全的。解引用指向已释放内存的指针(D)也会导致未定义行为。 26:以下关于指针数组与函数指针的哪些说法是正确的? A. 指针数组可以包含指向不同类型函数的指针。 B. 函数指针可以指向指向同一类型函数的指针数组。 C. 指针数组与函数指针都是指针,但它们指向的对象不同。 D. 指针数组与函数指针都可以作为函数参数。 答案:ABCD 解析:所有选项A、B、C和D都是正确的。指针数组可以包含指向不同类型函数的指针(A)。函数指针可以指向指向同一类型函数的指针数组(B)。指针数组和函数指针都是指针,但它们指向的对象不同(C)。指针数组和函数指针都可以作为函数参数(D)。 27:以下关于结构体指针的哪些说法是正确的? A. 结构体指针可以指向结构体变量。 B. 结构体指针可以指向结构体数组。 C. 结构体指针可以指向指向结构体的指针。 D. 结构体指针不能指向结构体。 答案:ABC 解析:正确选项A、B和C。结构体指针可以指向结构体变量(A),也可以指向结构体数组(B)。结构体指针还可以指向指向结构体的指针(C)。选项D错误,结构体指针可以指向结构体。 28:以下关于动态内存分配的哪些说法是正确的? A. 使用malloc和calloc分配内存时,如果分配失败,会返回NULL。 B. 使用new和delete操作符分配和释放内存时,如果分配失败,会抛出异常。 C. 使用malloc和calloc分配的内存,使用free函数释放。 D. 使用new和delete操作符分配的内存,使用delete运算符释放。 答案:ABCD 解析:所有选项A、B、C和D都是正确的。使用malloc和calloc分配内存时,如果分配失败,会返回NULL(A)。使用new和delete操作符分配和释放内存时,如果分配失败,会抛出异常(B)。使用malloc和calloc分配的内存,使用free函数释放(C)。使用new和delete操作符分配的内存,使用delete运算符释放(D)。 29:以下关于指针运算的哪些说法是正确的? A. 指针可以与整数相加或相减。 B. 指针可以与指针相加或相减。 C. 指针可以与浮点数相加或相减。 D. 指针可以与指针进行位运算。 答案:A 解析:正确选项A。指针可以与整数相加或相减,表示指针移动到数组中的下一个或上一个元素。选项B错误,指针不能与指针相加或相减。选项C错误,指针不能与浮点数相加或相减。选项D错误,指针不能与指针进行位运算。 30:以下关于指针与字符串的哪些说法是正确的? A. 字符串是常量指针,不能修改。 B. 字符串指针可以指向不同的字符串。 C. 字符串指针可以指向空字符串。 D. 字符串指针不能指向字符串之外的内存。 答案:ABCD 解析:所有选项A、B、C和D都是正确的。字符串是常量指针,不能修改(A)。字符串指针可以指向不同的字符串(B)。字符串指针可以指向空字符串(C)。字符串指针不能指向字符串之外的内存(D)。 三、判断题(共5题) 31:指针变量在C语言中不需要进行初始化。 正确( ) 错误( ) 答案:错误 解析:这个陈述是错误的。在C语言中,指针变量在使用之前必须进行初始化,以确保它指向一个有效的地址。未初始化的指针可能会导致程序崩溃或不可预测的行为。 32:在C语言中,可以使用数组名作为函数参数来传递数组。 正确( ) 错误( ) 答案:正确 解析:这个陈述是正确的。在C语言中,可以通过传递数组名(即数组的第一个元素的地址)来传递整个数组到函数中。这种方式在函数内部可以被视为一个指向数组首元素的指针。 33:C语言中的指针可以指向函数,并且可以返回一个函数。 正确( ) 错误( ) 答案:正确 解析:这个陈述是正确的。C语言中的指针可以指向函数,这样的指针称为函数指针。函数指针可以用来调用函数,并且可以通过返回函数指针来间接返回另一个函数。 34:在C语言中,结构体指针可以直接访问结构体的成员。 正确( ) 错误( ) 答案:错误 解析:这个陈述是错误的。在C语言中,结构体指针不能直接访问结构体的成员。要访问结构体成员,需要使用箭头操作符(->)或通过先解引用指针再使用点操作符(.)。 35:使用malloc或calloc函数分配的内存,在使用完毕后必须手动释放。 正确( ) 错误( ) 答案:正确 解析:这个陈述是正确的。在C语言中,使用malloc或calloc函数分配的内存属于动态分配的内存,它们在堆上分配。在使用完毕后,必须使用free函数手动释放这些内存,以避免内存泄漏。 四、材料分析题(共1题) 【给定材料】 近年来,我国城市化进程加快,城市人口不断增加,随之而来的是一系列城市问题。以下是一些关于城市治理的政务材料: 材料一:随着城市人口的增长,交通拥堵问题日益严重。据统计,我国大城市高峰时段交通拥堵指数普遍超过5级,严重影响市民出行。 材料二:为解决交通拥堵问题,某城市政府采取了一系列措施,如增加公共交通线路、优化交通信号灯、鼓励绿色出行等。同时,政府还通过媒体宣传,提高市民的环保意识。 材料三:尽管采取了多项措施,但城市空气质量仍然不容乐观。数据显示,该城市空气质量达标率仅为60%,PM2.5浓度较高,严重影响市民健康。 【问题】 1. 分析材料一和材料二,说明城市交通拥堵问题的原因及政府采取的措施。 2. 针对材料三,提出解决城市空气质量问题的对策建议。 答案要点及解析: 1. 城市交通拥堵问题的原因: - 城市人口增长迅速,导致交通需求增加。 - 交通基础设施建设滞后,无法满足日益增长的交通需求。 - 交通管理措施不完善,如公共交通线路不足、交通信号灯优化不到位等。 政府采取的措施: - 增加公共交通线路,提高公共交通的覆盖率和便捷性。 - 优化交通信号灯,提高交通流量。 - 鼓励绿色出行,如骑行、步行等。 2. 解决城市空气质量问题的对策建议: - 加强空气质量监测,及时掌握空气质量状况。 - 优化能源结构,减少燃煤、燃油等污染源。 - 发展清洁能源,如太阳能、风能等。 - 严格环境执法,对违法排放企业进行处罚。 - 提高市民环保意识,倡导绿色出行、低碳生活。 【参考解析】 1. 城市交通拥堵问题的主要原因在于城市人口增长迅速,交通需求增加,而交通基础设施建设滞后,无法满足日益增长的交通需求。政府采取的措施包括增加公共交通线路、优化交通信号灯、鼓励绿色出行等,旨在提高公共交通的覆盖率和便捷性,缓解交通拥堵问题。 2. 针对城市空气质量问题,建议加强空气质量监测,及时掌握空气质量状况;优化能源结构,减少燃煤、燃油等污染源;发展清洁能源,如太阳能、风能等;严格环境执法,对违法排放企业进行处罚;提高市民环保意识,倡导绿色出行、低碳生活。通过这些措施,有望改善城市空气质量,保障市民健康。
    展开阅读全文
    提示  咨信网温馨提示:
    1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
    2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
    3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
    4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
    5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
    6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

    开通VIP折扣优惠下载文档

    自信AI创作助手
    关于本文
    本文标题:2026年专升本C语言指针高级应用专题卷附答案解析与动态内存.docx
    链接地址:https://www.zixin.com.cn/doc/12619107.html
    页脚通栏广告

    Copyright ©2010-2025   All Rights Reserved  宁波自信网络信息技术有限公司 版权所有   |  客服电话:0574-28810668    微信客服:咨信网客服    投诉电话:18658249818   

    违法和不良信息举报邮箱:help@zixin.com.cn    文档合作和网站合作邮箱:fuwu@zixin.com.cn    意见反馈和侵权处理邮箱:1219186828@qq.com   | 证照中心

    12321jubao.png12321网络举报中心 电话:010-12321  jubao.png中国互联网举报中心 电话:12377   gongan.png浙公网安备33021202000488号  icp.png浙ICP备2021020529号-1 浙B2-20240490   


    关注我们 :微信公众号  抖音  微博  LOFTER               

    自信网络  |  ZixinNetwork