PTA—C语言期末复习(选择题)
1. 按照标识符的要求,(A)不能组成标识符。
A.连接符
B.下划线
C.大小写字母
D.数字字符
在大多数编程语言中,标识符通常由字母(包括大写和小写)、数字和下划线组成,但不能以数字开头,并且不能包含连接符等特殊字符。
2. 在C语言中,数字029是一个(D)。
A.八进制数
B.十进制数
C.十六进制数
D.非法数
八进制数以数字
0
开头,但八进制数的数字只能是0 - 7
。十进制数就是我们平常使用的普通数字,不需要前缀。
十六进制数以
0x
或0X
开头。例如,八进制数
027
是合法的,十进制数29
直接写为29
,十六进制数0x1D
是合法的。所以029
是一个非法数
3. 若有char w; int x; float y; double z;
则表达式w*x+z-y
值的数据类型为(D)。
A.float
B.char
C.int
D.double
在 C 语言中,当进行混合运算时,运算结果的类型会自动转换为参与运算的操作数中精度最高的类型.
4. 在c语言中,不允许有常量的数据类型是(B)
A.整型
B.结构型
C.字符型
D.字符串
结构体是一种自定义的数据类型,通常用于组合不同类型的数据来创建更复杂的数据结构,但结构体本身不能直接作为常量。结构体的变量可以有常量的值,但结构体类型不能直接表示为常量。
5. 下列运算符中优先级最低的是 (A)
A. II
B. >=
C. !=
D. ~
在 C 语言中,逻辑或运算符“||”的优先级低于关系运算符“>=”和“!=”,按位取反运算符“~”是单目运算符,优先级较高。关系运算符“>=”和“!=”的优先级相同。
例如,对于表达式
a >= b || c!= d
,会先计算关系运算a >= b
和c!= d
,然后再进行逻辑或运算。
6. 若x
为浮点型,则表达式x=10/4
为(B)。
A. 2.5
B. 2.0
C. 2
D. 3
在 C 语言中,当整数相除(
10/4
)时,结果会进行整数除法,得到的结果是整数2
。之后将这个整数
2
赋值给浮点型变量x
时,会进行类型转换,将整数2
转换为浮点数2.0
。例如,如果后续对x
进行输出,使用printf("%f", x);
输出的结果将是2.000000
。
7. 逻辑运算符两侧运算对象的数据类型(D)。
A. 只能是 0 或 1
B. 只能是 0 或非 0 正数
C. 只能是整型或字符型的数据
D. 可以是任何类型的数据
逻辑运算符包括
&&
(逻辑与)、||
(逻辑或)和!
(逻辑非)对于逻辑与
&&
和逻辑或||
,其操作数会被隐式转换为布尔值(非零值被视为true
,零值被视为false
)进行运算.所以逻辑运算符两侧运算对象的数据类型可以是任意类型.
8. 若p1
、p2
都是整型指针,p1
已经指向变量x
,要使p2
也指向x
, (A)是正确的。 (重点)
A. p2 = p1;
B. p2 = **p1;
C. p2 = &p1;
D. p2 = *p1;
在 C 语言中,指针变量存储的是另一个变量的地址。
当
p1
已经指向变量x
时,要使p2
也指向x
,只需要将p1
所存储的地址赋值给p2
即可。选项 C 中,
&p1
是取p1
这个指针变量本身的地址,而不是x
的地址。选项 D 中,
*p1
是获取p1
所指向变量的值,不是地址。例如,如果有
int x = 5; int *p1 = &x;
,执行p2 = p1;
后,对*p2
的操作就等同于对*p1
和x
的操作。
9. 以下选项中,对基本类型相同的指针变量不能进行运算的运算符是(A)。
A. +
B. -
C. =
D. ==
在 C 语言中,对于基本类型相同的指针变量,可以进行减法运算(
-
),用于计算两个指针之间的元素个数差。可以进行赋值运算(
=
),将一个指针的值赋给另一个指针。可以进行比较运算(
==
),判断两个指针是否指向相同的地址。但是不能进行加法运算(
+
),因为指针的加法运算在 C 语言中没有明确的语义和定义。
10. int a=5,*ap=&a ;则下列表达式错误的是(D) (重点)
A. &*ap 相当于&a
B. *&a 相当于ap
C. (*ap)++ 相当于a++
D. *ap++ 是合法访问
选项 A 中,
&*ap
,先进行*ap
得到a
,再对其取地址就是&a
,所以该表达式正确。选项 B 中,
*&a
,先对a
取地址得到&a
,再进行解引用就是a
,与ap
所指向的内容相同,所以该表达式正确。选项 C 中,
(*ap)++
,先解引用得到a
,然后对a
进行自增,相当于a++
,所以该表达式正确。选项 D 中,
*ap++
是错误的,它的本意可能是先使用*ap
的值,然后让ap
指针自增。但由于运算符优先级的问题,这个表达式会先计算ap++
,即让指针ap
自增,然后再进行解引用,这不是预期的操作,所以该表达式错误。例如,如果按照错误的方式使用
*ap++
,可能会导致程序出现未定义的行为或错误的结果
11. 下面是对s的初始化,其中不正确的是(D)
A. char s[5]={"abc"};
B. char s[5]={'a', 'b', 'c'};
C. char s[5]="";
D. char s[5]="abcdef";
选项 A ,
char s[5] = {"abc"};
,数组长度为 5,初始化字符串"abc"
,剩余两个位置自动补'\0'
,是正确的。选项 B ,
char s[5] = {'a', 'b', 'c'};
,这种初始化方式没有自动添加字符串结束符'\0'
,但在数组长度范围内,也是可以的。选项 C ,
char s[5] = "";
,初始化一个空字符串,剩余位置自动补'\0'
,是正确的。选项 D ,
char s[5] = "abcdef";
,初始化的字符串长度超过了数组的定义长度,会导致越界,是不正确的。例如,如果定义
char s[7] = "abcdef";
,就是正确的初始化。
12. 若有int x=1;,执行下列程序段后,变量x的正确结果是:(D)
A. 1
B. 2
C. 3
D. 4
在这个
switch
语句中,x * 10
的值为10
。首先会匹配到
case 10
,执行x += 1
,此时x
的值变为2
。由于没有break
语句,会继续执行下面的case 11
和default
中的语句,分别再次执行x += 1
。所以经过这一系列操作后,x
的值最终变为4
13. 下列程序段的功能是(D)
A. 自然数1~9的累加和
B. 自然数1~10的累加和
C. 自然数1~9中的奇数之和
D. 自然数1~10中的偶数之和
在这个程序中,
for
循环的条件是i < 10
,且i
的步长为2
,即i
依次取值为1
、3
、5
、7
、9
。在循环体中,进行累加的是
i + 1
,即2
、4
、6
、8
、10
。所以这个程序段的功能是计算自然数
1
到10
中的偶数之和。例如,如果将循环体修改为
s += i
,那么就是计算自然数1
到9
中的奇数之和。
14. 对于 C/C++语言的函数,下列叙述中正确的是(A)。
A. 函数的定义不能嵌套,但函数调用可以嵌套
B. 函数的定义可以嵌套,但函数调用不能嵌套
C. 函数的定义和调用都不能嵌套
D. 函数的定义和调用都可以嵌套
在 C/C++语言中,函数的定义不能嵌套,也就是说不能在一个函数的定义内部再定义另一个函数。但是函数的调用是可以嵌套的,即在一个函数内部可以调用其他函数,被调用的函数内部还可以再调用其他函数。
15. 在一个被调用函数中,关于 return 语句使用的描述,错误的是(D)。
A. 被调用函数中可以不用 return 语句
B. 被调用函数中可以使用多个 return 语句
C. 被调用函数中,如果有返回值,就一定要有 return 语句
D. 被调用函数中,一个 return 语句可以返回多个值给调用函数
选项 A ,被调用函数中可以不用
return
语句,例如当函数不需要返回值时。选项 B ,被调用函数中可以使用多个
return
语句,根据不同的条件在不同的位置返回。选项 C ,被调用函数中,如果有返回值,就一定要有
return
语句来返回具体的值。选项 D ,一个
return
语句只能返回一个值给调用函数,不能返回多个值。例如,一个计算两个数之和的函数,如果要返回结果,就需要使用
return a + b;
这样的语句来返回一个值。
16. 若程序中定义了以下函数
double myadd(double a,double b)
{ return (a+b); }
并将其放在调用语句之后,则在调用之前应该对该函数进行说明, 以下选项中错误的说明是(A)。
A. double myadd(double a,b) ;
B. double myadd(double,double);
C. double myadd(double b,double a);
D. double myadd(double x,double y);
在函数声明中,每个参数都必须明确指定其类型,不能像选项 A 中那样只指定第一个参数的类型而省略第二个参数的类型。
选项 B 、C 、D 都是正确的函数声明方式,只要参数的类型正确,参数的名称可以与定义中的不同。
例如,如果函数调用时传递的参数类型与声明不一致,可能会导致编译错误。
17. 若有函数max(a,b),为了让函数指针变量p指向函数max,正确的赋值方式是(A)。
A. p=max;
B. *p=max;
C. p=max(a,b);
D. *p=max(a,b);
在 C 语言中,要让函数指针变量
p
指向函数max
,应该使用p = max;
这种赋值方式。选项 B 中,
*p = max;
这种写法是错误的,不能通过解引用的方式给函数指针赋值。选项 C 中,
p = max(a,b);
这是调用函数max
并将返回值赋给p
,而不是让p
指向函数max
。选项 D 中,
*p = max(a,b);
同样是错误的写法,不能对函数指针进行这样的操作。例如,如果后续通过
p
来调用函数max
,可以写成(*p)(a, b);
18. 若有函数int func(int a,int b),函数指针变量p已经指向func函数,那么下列用指针方式调用函数的正确方法是(C)。
A. (*p)func(2,3);
B. *func(2,3);
C. p(2,3);
D. *p(2,3);
当函数指针变量
p
已经指向函数int func(int a, int b)
时,用指针方式调用函数的正确方法是p(2, 3)
。选项 A 中,
(*p)func(2, 3)
这种写法是错误的,不能在函数指针前再加*
然后跟函数名。选项 B 中,
*func(2, 3)
这种写法是错误的,不能直接对函数名使用解引用操作。选项 D 中,
*p(2, 3)
这种写法也是错误的。
19. 若有以下定义和语句:
int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;
则不能表示a数组元素的表达式是(B)
A. *p
B. a[10]
C. *a
D. a[p-a]
选项 A ,
*p
,因为p
指向数组a
的首元素,所以*p
能表示数组a
的第一个元素。选项 B ,
a[10]
,数组a
的有效下标是0
到9
,a[10]
超出了数组的范围,是错误的表达式。选项 C ,
*a
,等同于a[0]
,能表示数组a
的第一个元素。选项 D ,
a[p - a]
,因为p
指向a
的首元素,所以p - a
的值为0
,a[p - a]
就等同于a[0]
,能表示数组a
的第一个元素。
20. 若已定义:
int a[9],*p=a;
并在以后的语句中未改变p的值,不能表示a[1] 地址的表达式是(C)
A. p+1
B. a+1
C. a++
D. ++p
选项 A ,
p + 1
,因为p
是指向int
类型的指针,p + 1
表示指向数组a
中下一个元素(即a[1]
)的地址。选项 B ,
a + 1
,数组名a
本身代表数组的首地址,a + 1
表示数组中第二个元素(即a[1]
)的地址。选项 C ,数组名
a
是一个地址常量,不能进行自增(a++
)操作,这样的表达式是错误的。选项 D ,
++p
,使p
指向下一个元素(即a[1]
)的地址。例如,如果要通过指针访问
a[1]
的值,可以使用*(p + 1)
或者*(a + 1)
。
21. 以下数组定义中错误的是(B)。
A. int x[][3]={0};
B. int x[2][3]={{1,2},{3,4},{5,6)};
C. int x[][3]={{1,2,3},(4,5,6)};
D. int x[2][3]={1,2,3,4,5,6};
对于二维数组
int x[2][3]
,初始化时应该提供两行数据,每行包含三个元素。选项 A ,
int x[][3]={0};
,可以这样初始化,未明确指定行数,根据后面的初始化值可以推断出行数。选项 C ,
int x[][3]={{1, 2, 3}, {4, 5, 6}};
,初始化方式正确。选项 D ,
int x[2][3]={1, 2, 3, 4, 5, 6};
,按顺序初始化数组元素,方式正确。
22. 有两个字符数组a,b,则以下正确的输入语句是(B)
A. gets(a,b);
B. scanf("%s%s",a,b);
C. scanf("%s%s",&a,&b);
D. gets("a"),gets("b");
选项 A ,
gets
函数一次只能接受一个字符串的输入,不能同时输入两个字符串,所以gets(a, b)
是错误的。选项 B ,
scanf("%s%s", a, b)
是正确的输入格式,可以依次输入两个字符串分别存储到数组a
和b
中。选项 C ,数组名本身就代表数组的首地址,不需要再使用取地址符
&
,所以scanf("%s%s", &a, &b)
是错误的。选项 D ,
gets
函数的参数应该是字符数组名,而不是字符串"a"
和"b"
,所以gets("a"), gets("b")
是错误的。例如,如果输入
hello world
,那么a
中存储hello
,b
中存储world
。
23. 下面的程序段将输出 (C) 。
char s[10] = "abcd";
printf("%d\n", sizeof(s));
A. 4
B. 5
C. 10
D. 11
sizeof
操作符用于获取变量或数据类型所占的字节数。对于数组,sizeof
返回的是数组分配的总字节数。
24. 设有数组定义:char array [ ]="China"; 则数组 array所占的空间为(C)。
A. 4个字节
B. 5个字节
C. 6个字节
D. 7个字节
字符串
"China"
包含 5 个字符'C'
、'h'
、'i'
、'n'
、'a'
,但在 C 语言中,字符串会以'\0'
作为结束标志。所以数组
array
实际存储的是"China\0"
,共 6 个字符。每个字符占用 1 个字节,所以数组
array
所占的空间为 6 个字节。例如,如果定义
char array[] = "Hello"
,那么数组实际存储的是"Hello\0"
,占用 6 个字节。
25. 对于以下定义,不正确的叙述是(B)。
struct ex { int x;float y;char z ;
} example;
A. struct
是定义结构类型的关键字
B. example
是结构类型名
C. x
, y
, z
都是结构成员名
D. struct ex
是结构类型名
struct ex
是结构类型名,example
是使用struct ex
定义的结构变量名,而不是结构类型名。
海漫浩浩,我亦苦作舟!大家一起学习,一起进步!
相关文章:

PTA—C语言期末复习(选择题)
1. 按照标识符的要求,(A)不能组成标识符。 A.连接符 B.下划线 C.大小写字母 D.数字字符 在大多数编程语言中,标识符通常由字母(包括大写和小写)、数字和下划线组成,但不能以数字开头,…...

基于STM32的智能家用空气净化系统
目录 引言环境准备智能家用空气净化系统基础代码实现:实现智能家用空气净化系统 4.1 数据采集模块4.2 数据处理与分析4.3 控制系统实现4.4 用户界面与数据可视化应用场景:空气净化管理与优化问题解决方案与优化收尾与总结 1. 引言 智能家用空气净化系…...

计算机图形学入门18:阴影映射
1.前言 前面几篇关于光栅化的文章中介绍了如何计算物体表面的光照,但是着色并不会进行阴影的计算,阴影需要单独进行处理,目前最常用的阴影计算技术之一就是Shadow Mapping技术,也就是俗称的阴影映射技术。 2.阴影映射 Shadow Map…...
电机应用相关名词介绍
1.电机转速 定义:电机转速指电机工作时旋转的速度,是衡量电机性能的重要指标之一。 单位: 每分钟转数(RPM):即Revolutions Per Minute,表示电机每分钟旋转的圈数。 每秒转数(RPS…...

哈尔滨等保测评解读
哈尔滨的信息系统安全等级保护测评(简称“等保测评”)是中国网络安全法规的一部分,旨在确保关键信息基础设施和其他重要信息系统的安全。下面是对哈尔滨等保测评的解读: 测评目的 等保测评的主要目的是评估信息系统是否满足国家规…...
python接口自动化的脚本
使用Requests库进行GET请求 Requests是Python中最常用的HTTP库,用于发送HTTP请求。下面是一个简单的GET请求示例,用于从API获取数据。 import requests url = "https://api.example.com/data" response = requests.get(url) if response.status_code == 200:prin…...

pdf转换成cad,这几个cad转换小妙招快码住!
在数字设计领域,PDF(Portable Document Format)和CAD(Computer-Aided Design)文件格式各有其独特之处。PDF常用于文件共享和打印,而CAD则是工程师和设计师们进行精确绘图和建模的必备工具。然而,…...
计算机组成原理——系统总线
题目:计算机使用总线结构便于增减外设,同时__C____。 A.减少了信息传送量 B.提高了信息传输速度 C.减少了信息传输线的条数 1. 总线的分类 1.1. 片内总线 芯片内部的总线 在CPU芯片内部,寄存器与寄存器之间、寄存器与逻辑单元ALU之间 1.1.1. 数据总线 双向传输总线 数…...

2024年6月大众点评广州餐饮店铺POI分析20万家
2024年6月大众点评广州餐饮店铺POI共有199175家 店铺POI点位示例: 店铺id k9uiFADtAvs9EdPC 店铺名称 点都德(聚福楼店) 十分制服务评分 8.6 十分制环境评分 8.3 十分制划算评分 8.5 人均价格 77 评价数量 41673 店铺地址 惠福东路470号(富临食府对面) 大…...

【最佳实践】前端如何搭建自己的cli命令行工具,让自己编码的时候如虎添翼
作为前端开发人员,搭建自己的前端CLI工具是一个有趣且有意义的事情。以下是一篇详细的教程,包括使用场景和案例。 使用场景 假设你是一个前端团队的一员,需要频繁地在不同的项目中执行一些标准化的任务,比如: 根据模…...

未来一周比特币价格及数字货币市场预测
荷月的比特币市场就像过山车一样,仅仅六月下旬就跌去-12%,本周更是暴跌-6%,至 58,378美元。在这种市场表现,应有的踩踏如期而至。德国政府今日宣布再出售750 比特币的行为继续打击多头,但是小编认为这恰恰预示着市场可…...
Qt Quick 教程(二)
文章目录 今天分析一段代码1. 注册单例类型2. 注册普通QML类型3. 注册C++类型到Qt元对象系统4.总结,具体解释5.如何在QML中使用这些注册的类型参考今天分析一段代码 // Register typesqmlRegisterSingletonType(QUrl("qrc:/StyleSheet.qml"), "Librum.style&qu…...

10个实用的Python编程实例,助你快速掌握Python技巧!
作为一门简洁易学且强大的编程语言,Python广泛应用于各个领域。本文将向大家介绍10个实用的Python编程实例,通过详细的实例代码帮助读者快速掌握Python的基础知识和常用技巧。 1. 计算阶乘 def factorial(n):if n 0:return 1else:return n * factorial…...

为什么要本地化您的多媒体内容?
当我们访问网站、应用程序和社交媒体时,体验不再局限于陈旧的文本和静态图像。现代处理能力和连接速度提高了快速加载视频、音频和动画的可能性。 这一切都提供了更具沉浸感和互动性的用户体验。多媒体是数字营销中最有效的内容之一,因为它对用户更具吸…...

MMCV【mmclassification】 从0到1 之 Docker 容器环境搭建步骤总结
🥇 版权: 本文由【墨理学AI】原创首发、各位读者大大、敬请查阅、感谢三连 🎉 声明: 作为全网 AI 领域 干货最多的博主之一,❤️ 不负光阴不负卿 ❤️ 文章目录 📙 Linux 下 Docker 安装环境检查Docker 安装 [ root 或者 sudo 权限用户可安装 ]给 普通用户 加入 Docker …...

深入探索Jetpack数据绑定(DataBinding)
Jetpack的数据绑定(DataBinding)库为我们提供了一个强大而灵活的工具,用于将UI组件与数据源绑定在一起。本文将深入探讨数据绑定的高级用法,包括双向绑定、自定义Binding Adapter、使用LiveData和ViewModel,以及如何处…...
vivado CELL_BLOAT_FACTOR、CFGBVS
CELL_BLOAT_FACTOR CELL_BLOAT_FACTOR属性用于指定添加“空白”或 增加单元格间距以增加分层单元格之间的放置距离 单元Vivado放置器会将模块中的单元隔开,以改善路由结果 设计。 当模块中的单元放置在一起时,可以使用单元膨胀,并且 从而在放…...

Linux—进程与计划管理
目录 一、程序 二、进程 1、什么是进程 2、进程的特点 3、进程、线程、携程 3.1、进程 3.2、线程 3.3、携程 三、查看进程信息 1、ps -aux 2、ps -elf 3、top 3.2、输出内容详解 3.2.1、输出第一部分解释 3.2.2、输出第二部分解释 4、pgrep 5、pstree 四、进…...

整数智能与上海数据交易所携手,共筑数据要素市场新篇章
近期,整数智能荣获上海数据交易所“数据治理服务商”证书,正式加入上海数据交易所数商生态,成为上海数据交易所官方认证的数据治理服务商。 在数字经济的浪潮中,上海数据交易所一直扮演着引领者和推动者的角色。紧扣建设国家级…...
计算机网络-自顶向下方法复习纲要
计算机网络-自顶向下方法复习纲要 第一章:计算机网络和因特网 协议:p6网络边缘:p6网络核心:p15存储转发传输机制:p16电路转发中的复用:p19-p20分组交换和电路交换的区别/对比:p18/p20分组交换…...
Vim 调用外部命令学习笔记
Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...
Python|GIF 解析与构建(5):手搓截屏和帧率控制
目录 Python|GIF 解析与构建(5):手搓截屏和帧率控制 一、引言 二、技术实现:手搓截屏模块 2.1 核心原理 2.2 代码解析:ScreenshotData类 2.2.1 截图函数:capture_screen 三、技术实现&…...

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘
美国西海岸的夏天,再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至,这不仅是开发者的盛宴,更是全球数亿苹果用户翘首以盼的科技春晚。今年,苹果依旧为我们带来了全家桶式的系统更新,包括 iOS 26、iPadOS 26…...
DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径
目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...

2025盘古石杯决赛【手机取证】
前言 第三届盘古石杯国际电子数据取证大赛决赛 最后一题没有解出来,实在找不到,希望有大佬教一下我。 还有就会议时间,我感觉不是图片时间,因为在电脑看到是其他时间用老会议系统开的会。 手机取证 1、分析鸿蒙手机检材&#x…...

UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)
UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中,UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化…...
根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:
根据万维钢精英日课6的内容,使用AI(2025)可以参考以下方法: 四个洞见 模型已经比人聪明:以ChatGPT o3为代表的AI非常强大,能运用高级理论解释道理、引用最新学术论文,生成对顶尖科学家都有用的…...

分布式增量爬虫实现方案
之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面,避免重复抓取,以节省资源和时间。 在分布式环境下,增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路:将增量判…...

【VLNs篇】07:NavRL—在动态环境中学习安全飞行
项目内容论文标题NavRL: 在动态环境中学习安全飞行 (NavRL: Learning Safe Flight in Dynamic Environments)核心问题解决无人机在包含静态和动态障碍物的复杂环境中进行安全、高效自主导航的挑战,克服传统方法和现有强化学习方法的局限性。核心算法基于近端策略优化…...

springboot整合VUE之在线教育管理系统简介
可以学习到的技能 学会常用技术栈的使用 独立开发项目 学会前端的开发流程 学会后端的开发流程 学会数据库的设计 学会前后端接口调用方式 学会多模块之间的关联 学会数据的处理 适用人群 在校学生,小白用户,想学习知识的 有点基础,想要通过项…...