【计算机类职业资格】二级C++笔试67及答案解析.doc

上传人:eveningprove235 文档编号:1324803 上传时间:2019-10-17 格式:DOC 页数:13 大小:72.50KB
下载 相关 举报
【计算机类职业资格】二级C++笔试67及答案解析.doc_第1页
第1页 / 共13页
【计算机类职业资格】二级C++笔试67及答案解析.doc_第2页
第2页 / 共13页
【计算机类职业资格】二级C++笔试67及答案解析.doc_第3页
第3页 / 共13页
【计算机类职业资格】二级C++笔试67及答案解析.doc_第4页
第4页 / 共13页
【计算机类职业资格】二级C++笔试67及答案解析.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

1、二级 C+笔试 67 及答案解析(总分:98.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:70.00)1.下列选项中不符合良好程序设计风格的是( )。(分数:2.00)A.源程序要文档化B.数据说明的次序要规范化C.避免滥用 goto 语句D.模块设计要保证高耦合、高内聚2.设 a=1;b=2;,则(a+)+b 和 a+b 这两个表达式的值分别为( )。(分数:2.00)A.3,3B.3,4C.4,3D.4,43.若定义:float x;int a,b;,则正确的 switch 语句是( )。 Aswitch(x) Bswitch(x) case1.0:cout“*/n“

2、; case 1.2:cout“*/n“; case2.0:cout“*/n“; case 3:cout“*/n“; C. switch(a+b) D. switch(a+b) case 1.0:cout“*/n“; case 1:cout“*/n“; case 1+2:cout“*/n “; case 2:cout“*/n“;(分数:2.00)A.B.C.D.4.定义如下枚举类型:enum Numberone=1,two=2,four=4,eight=8),则下列语句正确的是( )。(分数:2.00)A.Number num=1;B.Numbernum=Number(20);C.Number

3、 num=Number(eightOxF;D.枚举类型 Number 的取值范围是 0155.程序设计语言的工程特性之一为( )。(分数:2.00)A.软件的可重用性B.数据结构的描述性C.抽象类型的描述性D.数据库的易操作性6.C+语言中规定函数的返回值的类型是由( )。(分数:2.00)A.return 语句中的表达式类型所决定B.调用该函数时的主调用函数类型所决定C.调用该函数时系统临时决定D.在定义该函数时所指定的数据类型所决定7.在关系数据库中,用来组织索引结构联系的是( )。(分数:2.00)A.树形结构B.网状结构C.线性表D.二维表8.有如下程序: #include iostr

4、eam using namespace std; class A public: A()cout“A“; ;class B public:B()cout“B“; ; class C:public A B b; public:C()cout“C“; ; int main()C obj;return 0; 执行后的输出结果是( )。(分数:2.00)A.CBAB.BACC.ACBD.ABC9.检查模块是否正确的组合在一起的过程称为( )。(分数:2.00)A.确认测试B.集成测试C.验证测试D.验收测试10.有如下类定义: class MyBase int k; public: MyBase(in

5、t n-0):k(n) int value()constreturn k; ; class MyDefived: MyBase int j; public: MyDefived(int i):j(i) int getK()constreturn k; int getJ()constreturn j; ; 编译时发现有一处语法错误,对这个错误最准确的描述是( )。(分数:2.00)A.函数 getK 试图访问基类的私有成员变量 kB.在类 MyDerived 的定义中,基类名 MyBase 前缺少关键字 public、protected 或 pfivateC.类 MyDerived 缺少一个无参

6、的构造函数D.类 MyDerived 的构造函数没有对基类数据成员 k 进行初始化11.下列叙述中,不属于数据库系统的是( )。(分数:2.00)A.数据库B.数据库管理系统C.数据库管理员D.数据库应用系统12.运算符函数调用格式的表达式 y/x+与表达式 y.operator/(operator+(x,0)的含义相同,由此可看出( )。(分数:2.00)A.“/”和“+”都是作为成员函数重载的B.“/”和“+”都是作为非成员函数重载的C.“/”是作为成员函数重载的,“+”是作为非成员函数重载的D.“/”是作为非成员函数重载的,“+”都是作为成员函数重载的13.在 ios 中提供控制格式的标

7、志位中,( )是转换为十六进制形式的标志位。(分数:2.00)A.hexB.octC.decD.left14.下列程序的输出结果为( )。 #includeiostream.h main() int a=4,b=3,c=1,d; d=a coutd; (分数:2.00)A.0B.3C.1D.415.下列数组的定义中,会产生错误的是( )。 Aint a=0,1,2,3,4,5,6; Bint a10=0,1,2,3,4,5,6; C. char a5=“hello“; D. char a5=h,e,l,l,o;(分数:2.00)A.B.C.D.16.带有虚基类的多层次派生类构造函数的成员初始化

8、列表中都要列出虚基类的构造函数,这样对虚基类的子对象初始化( )。(分数:2.00)A.与虚基类下面的派生类个数有关B.多次C.二次D.一次17.下列关于继承的描述中,错误的是( )。(分数:2.00)A.析构函数不能被继承B.派生类是基类的组合C.派生类的成员除了它自己的成员外,还包含了它的基类的成员D.派生类中继承的基类成员的访问权限到派生类保持不变18.if 语句的语法格式可描述为: 格式 1:if(条件)语句 或 格式 2:if(条件)语句1else语句 2 关于上面的语法格式,下列表述中错误的是( )。(分数:2.00)A.条件部分可以是一个 if 语句,例如 if(if=0).).

9、B.语句部分可以是一个 if 语句,例如 if(.)if(.).C.如果在条件前加上逻辑非运算符!并交换语句 1和语句 2的位置,语句功能不变D.语句部分可以是一个循环语句,例如 if(.)while(.).19.语句 ofstream f(“SALARY.DAT“,ios:appl ios:binary);的功能是建立流对象 f,试图打开文件SALARY.DAT 并与之连接,并且( )。(分数:2.00)A.若文件存在,将文件写指针定位于文件尾;若文件不存在,建立一个新文件B.若文件存在,将其置为空文件;若文件不存在,打开失败C.若文件存在,将文件写指针定位于文件首;若文件不存在,建立一个新

10、文件D.若文件存在,打开失败;若文件不存在,建立一个新文件20.下列数据结构中不属于线性存储结构的是( )。(分数:2.00)A.顺序表B.栈C.队列D.链表21.若有以下定义和语句: int s45,(*ps)5; ps=s; 则对 s 数组元素的正确引用形式是( )。(分数:2.00)A.ps+1B.*(ps+3)C.ps02D.*(ps+1)+322.在数据库系统中,用户所见的数据模式为( )。(分数:2.00)A.概念模式B.外模式C.内模式D.物理模式23.以下程序的正确运行结果是( )。 #includeiostream.h int f(int);. void main() int

11、 a=2,i; for(i=0;i3;i+) coutf(a)“ “; coutendl; int f(int a) int b=0; static int c=3; b+;c+; return(a+b+c); (分数:2.00)A.777B.7 10 13C.79 11D.7 8 924.对下列二叉树 (分数:2.00)A.ACBDFEGB.ACBDFGEC.ABDCGEFD.FCADBEG25.若有以下程序: #include iostream using namespace std; void sub(int x,int y, int *z) *Z = y+x; int main() i

12、nt a,b,c; sub(8,4, sub(6,a, sub(a,b, couta“,“b“,“cendl; return 0; 程序运行后的输出结果是( )。(分数:2.00)A.12,18,30B.-12,6,8C.6,8,10D.12,-18,1626.cout、cerr 和 clog 是( )的对象,cout 处理标准输出,cerr 和 clog 都处理标准出错信息。(分数:2.00)A.istreamB.ostreamC.celtD.clog27.不合法的 main 函数命令行参数表示形式是( )。(分数:2.00)A.main (int a,char*c1)B.main (int

13、 arc, char*arC.main (int argc, char*argD.main (int argy, char*argc)28.有如下类声明: class MyBASE int k; public: void set(int n) k=n; int get()constreturn k; ; class MyDERIVED:protected MyBASE protected. int j; public: void set(int m,int n)MyBASE:set(m);j=n; int get()constreturn MyBASE:get()+j; ; 则类 MyDERI

14、VED 中保护的数据成员和成员函数的个数是( )。(分数:2.00)A.4B.3C.2D.129.多态性指的是( )。(分数:2.00)A.以任何方式调用一个虚函数B.以任何方式调用一个纯虚函数C.借助于指向对象的基类指针或引用调用一个虚函数D.借助于指向对象的基类指针或引用调用一个纯虚函数30.希尔排序属于( )。(分数:2.00)A.交换排序B.归并排序C.选择排序D.插入排序31.执行语句序列 int i=0;while(i25)i+=3;couti; 输出结果是( )。(分数:2.00)A.24B.25C.27D.2832.在 C+中,用于实现运行时多态性的是( )。(分数:2.00)

15、A.内联函数B.重载函数C.模板函数D.虚函数33.数据的逻辑结构是指( )。(分数:2.00)A.存储在外存中的数据B.数据所占的存储空间量C.数据元素之间的逻辑关系D.数据的逻辑结构在计算机中的表示34.关于关键字 class 和 typename,下列表述中正确的是( )。(分数:2.00)A.程序中的 typename 都可以替换为 classB.程序中的 class 都可以替换为 typenameC.在模板形参表中只能用 typename 来声明参数的类型D.在模板形参表中只能用 class 或 typename 来声明参数的类型35.函数 fun 的返回值是( )。 fun(cha

16、r * a, char *b) int num=0,n=0; while(*(a+num)!=/0) num+; while(bn) *(a+num)=bn;num+;n+; return num; (分数:2.00)A.字符串 a 的长度B.字符串 b 的长度C.字符串 a 和 b 的长度之差D.字符串 a 和 b 的长度之和二、B填空题/B(总题数:14,分数:28.00)36.在深度为 5 的完全二叉树中,度为 2 的结点数最多为U 【1】 /U。(分数:2.00)填空项 1:_37.在算法正确的前提下,评价一个算法的两个标准是U 【2】 /U。(分数:2.00)填空项 1:_38.软件

17、生命周期包括 8 个阶段。为了使各时期的任务更明确,又可分为 3 个时期:软件定义期、软件开发期、软件维护期。编码和测试属于U 【3】 /U期。(分数:2.00)填空项 1:_39.程序文件的编译错误分为语法错误和U 【4】 /U两类。(分数:2.00)填空项 1:_40.耦合和内聚是评价模块独立性的两个主要标准,其中U 【5】 /U反映了模块内各成分之间的联系。(分数:2.00)填空项 1:_41.写出执行完下列代码段之后指定变量的值: boo1 x=true,y=false,z=false; x=x y=xy z=!(x!=y)(y=z), 则 x=false, y=false, z=U

18、【6】 /U。(分数:2.00)填空项 1:_42.程序中有如下语句 for(int i=0;i5;i+)cout*(p+i)“,“; 能够依次输出 int 型一维数组DATA 的前 5 个元素。由此可知,变量 p 的定义及初始化语句是U 【7】 /U。(分数:2.00)填空项 1:_43.已知 double var;是文件 F1.CPP 中的一个全局变量定义,若文件 F2.CPP 中的某个函数也需要访问,则在文件 F2CPP 中 var 应说明为U 【8】 /U。(分数:2.00)填空项 1:_44.类继承中,缺省的继承方式是U 【9】 /U。(分数:2.00)填空项 1:_45.设有下定义

19、的语句: int a32=10,20,30,40,50,60; int b32=10,20,30,40,50,60; 则 a11*b21=U 【10】 /U。(分数:2.00)填空项 1:_46.有如下程序: #include iostream using namespace std; class ONE public: virtual void f() cout “1“; ; class TWO: public ONE public: TWO() cout “2“; ; class THREE: public TWO public: virtual void f() TWO:f(); cou

20、t “3“; ; int main() ONE aa, *p; TWO bb; THREE cc; p= P-f(); return 0; 执行上面程序的输出是U 【11】 /U。(分数:2.00)填空项 1:_47.有以下面程序: #include iostream using namespace std; long fib(int n) if (n2) return (fib(n-1)+fib(n-2); else return 2; int main() coutfib(3)endl; return 0; 则该程序的输出结果应该是U 【12】 /U。(分数:2.00)填空项 1:_48.

21、若有以下定义及初始化语句: int i=100; int *ip=b=2;,则(a+)+b 和 a+b 这两个表达式的值分别为( )。(分数:2.00)A.3,3 B.3,4C.4,3D.4,4解析:3.若定义:float x;int a,b;,则正确的 switch 语句是( )。 Aswitch(x) Bswitch(x) case1.0:cout“*/n“; case 1.2:cout“*/n“; case2.0:cout“*/n“; case 3:cout“*/n“; C. switch(a+b) D. switch(a+b) case 1.0:cout“*/n“; case 1:co

22、ut“*/n“; case 1+2:cout“*/n “; case 2:cout“*/n“;(分数:2.00)A.B.C.D. 解析:4.定义如下枚举类型:enum Numberone=1,two=2,four=4,eight=8),则下列语句正确的是( )。(分数:2.00)A.Number num=1;B.Numbernum=Number(20);C.Number num=Number(eightOxF;D.枚举类型 Number 的取值范围是 015 解析:5.程序设计语言的工程特性之一为( )。(分数:2.00)A.软件的可重用性 B.数据结构的描述性C.抽象类型的描述性D.数据库的

23、易操作性解析:6.C+语言中规定函数的返回值的类型是由( )。(分数:2.00)A.return 语句中的表达式类型所决定B.调用该函数时的主调用函数类型所决定C.调用该函数时系统临时决定D.在定义该函数时所指定的数据类型所决定 解析:7.在关系数据库中,用来组织索引结构联系的是( )。(分数:2.00)A.树形结构B.网状结构C.线性表D.二维表 解析:8.有如下程序: #include iostream using namespace std; class A public: A()cout“A“; ;class B public:B()cout“B“; ; class C:public

24、A B b; public:C()cout“C“; ; int main()C obj;return 0; 执行后的输出结果是( )。(分数:2.00)A.CBAB.BACC.ACBD.ABC 解析:9.检查模块是否正确的组合在一起的过程称为( )。(分数:2.00)A.确认测试B.集成测试 C.验证测试D.验收测试解析:10.有如下类定义: class MyBase int k; public: MyBase(int n-0):k(n) int value()constreturn k; ; class MyDefived: MyBase int j; public: MyDefived(i

25、nt i):j(i) int getK()constreturn k; int getJ()constreturn j; ; 编译时发现有一处语法错误,对这个错误最准确的描述是( )。(分数:2.00)A.函数 getK 试图访问基类的私有成员变量 k B.在类 MyDerived 的定义中,基类名 MyBase 前缺少关键字 public、protected 或 pfivateC.类 MyDerived 缺少一个无参的构造函数D.类 MyDerived 的构造函数没有对基类数据成员 k 进行初始化解析:11.下列叙述中,不属于数据库系统的是( )。(分数:2.00)A.数据库B.数据库管理系

26、统C.数据库管理员D.数据库应用系统 解析:12.运算符函数调用格式的表达式 y/x+与表达式 y.operator/(operator+(x,0)的含义相同,由此可看出( )。(分数:2.00)A.“/”和“+”都是作为成员函数重载的B.“/”和“+”都是作为非成员函数重载的C.“/”是作为成员函数重载的,“+”是作为非成员函数重载的 D.“/”是作为非成员函数重载的,“+”都是作为成员函数重载的解析:13.在 ios 中提供控制格式的标志位中,( )是转换为十六进制形式的标志位。(分数:2.00)A.hex B.octC.decD.left解析:14.下列程序的输出结果为( )。 #inc

27、ludeiostream.h main() int a=4,b=3,c=1,d; d=a coutd; (分数:2.00)A.0B.3C.1 D.4解析:15.下列数组的定义中,会产生错误的是( )。 Aint a=0,1,2,3,4,5,6; Bint a10=0,1,2,3,4,5,6; C. char a5=“hello“; D. char a5=h,e,l,l,o;(分数:2.00)A.B.C. D.解析:16.带有虚基类的多层次派生类构造函数的成员初始化列表中都要列出虚基类的构造函数,这样对虚基类的子对象初始化( )。(分数:2.00)A.与虚基类下面的派生类个数有关B.多次C.二次

28、D.一次 解析:17.下列关于继承的描述中,错误的是( )。(分数:2.00)A.析构函数不能被继承B.派生类是基类的组合C.派生类的成员除了它自己的成员外,还包含了它的基类的成员D.派生类中继承的基类成员的访问权限到派生类保持不变 解析:18.if 语句的语法格式可描述为: 格式 1:if(条件)语句 或 格式 2:if(条件)语句1else语句 2 关于上面的语法格式,下列表述中错误的是( )。(分数:2.00)A.条件部分可以是一个 if 语句,例如 if(if=0).). B.语句部分可以是一个 if 语句,例如 if(.)if(.).C.如果在条件前加上逻辑非运算符!并交换语句 1和

29、语句 2的位置,语句功能不变D.语句部分可以是一个循环语句,例如 if(.)while(.).解析:19.语句 ofstream f(“SALARY.DAT“,ios:appl ios:binary);的功能是建立流对象 f,试图打开文件SALARY.DAT 并与之连接,并且( )。(分数:2.00)A.若文件存在,将文件写指针定位于文件尾;若文件不存在,建立一个新文件 B.若文件存在,将其置为空文件;若文件不存在,打开失败C.若文件存在,将文件写指针定位于文件首;若文件不存在,建立一个新文件D.若文件存在,打开失败;若文件不存在,建立一个新文件解析:20.下列数据结构中不属于线性存储结构的是

30、( )。(分数:2.00)A.顺序表B.栈C.队列D.链表 解析:21.若有以下定义和语句: int s45,(*ps)5; ps=s; 则对 s 数组元素的正确引用形式是( )。(分数:2.00)A.ps+1B.*(ps+3)C.ps02 D.*(ps+1)+3解析:22.在数据库系统中,用户所见的数据模式为( )。(分数:2.00)A.概念模式B.外模式 C.内模式D.物理模式解析:23.以下程序的正确运行结果是( )。 #includeiostream.h int f(int);. void main() int a=2,i; for(i=0;i3;i+) coutf(a)“ “; co

31、utendl; int f(int a) int b=0; static int c=3; b+;c+; return(a+b+c); (分数:2.00)A.777B.7 10 13C.79 11D.7 8 9 解析:24.对下列二叉树 (分数:2.00)A.ACBDFEG B.ACBDFGEC.ABDCGEFD.FCADBEG解析:25.若有以下程序: #include iostream using namespace std; void sub(int x,int y, int *z) *Z = y+x; int main() int a,b,c; sub(8,4, sub(6,a, su

32、b(a,b, couta“,“b“,“cendl; return 0; 程序运行后的输出结果是( )。(分数:2.00)A.12,18,30 B.-12,6,8C.6,8,10D.12,-18,16解析:26.cout、cerr 和 clog 是( )的对象,cout 处理标准输出,cerr 和 clog 都处理标准出错信息。(分数:2.00)A.istreamB.ostream C.celtD.clog解析:27.不合法的 main 函数命令行参数表示形式是( )。(分数:2.00)A.main (int a,char*c1)B.main (int arc, char*arC.main (i

33、nt argc, char*arg D.main (int argy, char*argc)解析:28.有如下类声明: class MyBASE int k; public: void set(int n) k=n; int get()constreturn k; ; class MyDERIVED:protected MyBASE protected. int j; public: void set(int m,int n)MyBASE:set(m);j=n; int get()constreturn MyBASE:get()+j; ; 则类 MyDERIVED 中保护的数据成员和成员函数的

34、个数是( )。(分数:2.00)A.4B.3 C.2D.1解析:29.多态性指的是( )。(分数:2.00)A.以任何方式调用一个虚函数B.以任何方式调用一个纯虚函数C.借助于指向对象的基类指针或引用调用一个虚函数 D.借助于指向对象的基类指针或引用调用一个纯虚函数解析:30.希尔排序属于( )。(分数:2.00)A.交换排序B.归并排序C.选择排序D.插入排序 解析:31.执行语句序列 int i=0;while(i25)i+=3;couti; 输出结果是( )。(分数:2.00)A.24B.25C.27 D.28解析:32.在 C+中,用于实现运行时多态性的是( )。(分数:2.00)A.

35、内联函数B.重载函数C.模板函数D.虚函数 解析:33.数据的逻辑结构是指( )。(分数:2.00)A.存储在外存中的数据B.数据所占的存储空间量C.数据元素之间的逻辑关系 D.数据的逻辑结构在计算机中的表示解析:34.关于关键字 class 和 typename,下列表述中正确的是( )。(分数:2.00)A.程序中的 typename 都可以替换为 class B.程序中的 class 都可以替换为 typenameC.在模板形参表中只能用 typename 来声明参数的类型D.在模板形参表中只能用 class 或 typename 来声明参数的类型解析:35.函数 fun 的返回值是(

36、)。 fun(char * a, char *b) int num=0,n=0; while(*(a+num)!=/0) num+; while(bn) *(a+num)=bn;num+;n+; return num; (分数:2.00)A.字符串 a 的长度B.字符串 b 的长度C.字符串 a 和 b 的长度之差D.字符串 a 和 b 的长度之和 解析:二、B填空题/B(总题数:14,分数:28.00)36.在深度为 5 的完全二叉树中,度为 2 的结点数最多为U 【1】 /U。(分数:2.00)填空项 1:_ (正确答案:15)解析:37.在算法正确的前提下,评价一个算法的两个标准是U 【

37、2】 /U。(分数:2.00)填空项 1:_ (正确答案:时间复杂度和空间复杂度)解析:38.软件生命周期包括 8 个阶段。为了使各时期的任务更明确,又可分为 3 个时期:软件定义期、软件开发期、软件维护期。编码和测试属于U 【3】 /U期。(分数:2.00)填空项 1:_ (正确答案:软件开发)解析:39.程序文件的编译错误分为语法错误和U 【4】 /U两类。(分数:2.00)填空项 1:_ (正确答案:连接错误)解析:40.耦合和内聚是评价模块独立性的两个主要标准,其中U 【5】 /U反映了模块内各成分之间的联系。(分数:2.00)填空项 1:_ (正确答案:内聚)解析:41.写出执行完下

38、列代码段之后指定变量的值: boo1 x=true,y=false,z=false; x=x y=xy z=!(x!=y)(y=z), 则 x=false, y=false, z=U 【6】 /U。(分数:2.00)填空项 1:_ (正确答案:true)解析:42.程序中有如下语句 for(int i=0;i5;i+)cout*(p+i)“,“; 能够依次输出 int 型一维数组DATA 的前 5 个元素。由此可知,变量 p 的定义及初始化语句是U 【7】 /U。(分数:2.00)填空项 1:_ (正确答案:int*p=DATA;)解析:43.已知 double var;是文件 F1.CPP

39、中的一个全局变量定义,若文件 F2.CPP 中的某个函数也需要访问,则在文件 F2CPP 中 var 应说明为U 【8】 /U。(分数:2.00)填空项 1:_ (正确答案:外部变量)解析:44.类继承中,缺省的继承方式是U 【9】 /U。(分数:2.00)填空项 1:_ (正确答案:私有继承)解析:45.设有下定义的语句: int a32=10,20,30,40,50,60; int b32=10,20,30,40,50,60; 则 a11*b21=U 【10】 /U。(分数:2.00)填空项 1:_ (正确答案:2400)解析:46.有如下程序: #include iostream usi

40、ng namespace std; class ONE public: virtual void f() cout “1“; ; class TWO: public ONE public: TWO() cout “2“; ; class THREE: public TWO public: virtual void f() TWO:f(); cout “3“; ; int main() ONE aa, *p; TWO bb; THREE cc; p= P-f(); return 0; 执行上面程序的输出是U 【11】 /U。(分数:2.00)填空项 1:_ (正确答案:2213)解析:47.有以

41、下面程序: #include iostream using namespace std; long fib(int n) if (n2) return (fib(n-1)+fib(n-2); else return 2; int main() coutfib(3)endl; return 0; 则该程序的输出结果应该是U 【12】 /U。(分数:2.00)填空项 1:_ (正确答案:4)解析:48.若有以下定义及初始化语句: int i=100; int *ip=& i; int k=*ip; 并假设整型数 i 的地址为0x12345678,指针中的地址为 0x21000000,则 k 的值为U 【13】 /U。(分数:2.00)填空项 1:_ (正确答案:100)解析:49.带有U 【14】 /U的类称为抽象类,它只能作为U 【15】 /U来使用。(分数:2.00)填空项 1:_ (正确答案:14纯虚函数)解析:15基类

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1