2025年3月GESP认证C++等级考试一级真题(含答案和解析-在末尾)_第1页
2025年3月GESP认证C++等级考试一级真题(含答案和解析-在末尾)_第2页
2025年3月GESP认证C++等级考试一级真题(含答案和解析-在末尾)_第3页
2025年3月GESP认证C++等级考试一级真题(含答案和解析-在末尾)_第4页
2025年3月GESP认证C++等级考试一级真题(含答案和解析-在末尾)_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2025年3月GESP认证C++等级考试一级真题(含答案和解析-在末尾)一、单选题(每题2分,共30分)。1.题2025年春节有两件轰动全球的事件,一个是DeepSeek横空出世,另一个是贺岁片《哪吒2》票房惊人,入了全球票房榜。下面关于DeepSeek与《哪吒2》的描述成立的是()。A.《哪吒2》是一款新型操作系统B.DeepSeek是深海钻探软件C.《哪吒2》可以生成新的软件D.DeepSeek可以根据《哪吒2》的场景生成剧情脚本2.在某集成开发环境中编辑一个源代码文件时不可以执行下面()操作。A.修改变量定义B.保存代码修改C.撤销代码修改D.插入执行截图3.在C++中,下列可以做变量的是()。A.Var-1B.$1C.%%1D._Var_14.以下哪个是C++语言的关键字?()。A.absB.cinC.doD.endl5.下面的框架在L1和L2标记的两行处分别填写选项中的代码,哪组不能通过编译()。intmain(){inti=0;______________//L1。break;______________//L2。return0;}A.B.C.D.6.下面C++语句()执行后的输出是__0322$$。A.printf("__%2d%02d$$",3,22)B.printf("__%02d%2d$$",3,22)C.printf("__%02d%02d$$$$",3,22)D.printf("____%02d%02d$$$$",3,22)7.有关下列C++代码的说法,错误的是()。printf("我爱码代码!");A.配对双引号内的汉字改为英文Hello,C++代码能正确执行。B.配对双引号内的汉字改为Hello代码!,C++代码能正确执行。C.代码中的每个双引号,都可以改为两个单引号。D.代码中的每个双引号,都可以改为三个双引号。8.题C++表达式16/4%2的值是()。()。A.8B.4C.2D.09.题N是C++的正整数,值为12,则cout<<(N%3+N/5)的输出是()。A.6.4B.2.4C.6D.210.下面C++代码执行后的输出是()。intN=10;printf("{N}*{N}={%d*%d}",N,N,N*N);A.10*10={10*10}B.100=10C.N*N=100D.{N}*{N}={10*10}11.执行下面的C++代码,在键盘上先后输入100和200,输出是()。intfirst,second;cout<<"请输入第1个正整数:";cin>>first;cout<<"请输入第2个正整数:";cin>>second;cout<<(first/second*second)<<endl;A.200B.100C.1D.012.下面C++代码执行后,将输出能被2整除且除以7余数为2的数。下列选项不能实现的是()。for(inti=0;i<100;i++)if_______________________cout<<i<<"";A.((i%2==0)&&(i%7==2))B.((!(i%2))&&(i%7==2))C.((!(i%2))&&(!(i%7)))D.((i%2!=1)&&(i%7==2))13.下面C++代码执行后输出是()。inttnt=0;for(inti=-1000;i<1000;i++)tnt+=i;cout<<tnt<<endl;A.-1000B.0C.999D.100014.下面C++代码执行后输出的是()。inti;for(i=1;i<100;i+=5)continue;cout<<i<<endl;A.101B.100C.99D.9615.下面C++代码执行后输出的是()。inttnt=0;for(inti=5;i<100;i+=5){if(i%2==0)continue;tnt+=1;if(i%3==0&&i%7==0)break;}cout<<tnt<<endl;A.500B.450C.10D.1二、判断题(每题2分,共20分)。16.题C++、Python都是高级编程语言,它们的每条语句最终都要通过机器指令来完成。()。A.正确B.错误17.在C++中表达式N*2%N中如果N的值为正整数,则其值为2。()。A.正确B.错误18.执行如下C++代码如果在键盘上输入10,执行后将输出20。()。charN;printf("请输入正整数:");cin>>N;printf("%d\n",N*2);A.正确B.错误19.删除下面C++代码中的continue不影响程序的执行效果。()。for(inti=0;i<100;i++){if(i%2==0){printf("偶数");continue;}elseprintf("奇数");}A.正确B.错误20.下面C++代码执行时将报错,因为所在位置应该是变量名,而不可以做变量名。()。for(int_=0;_<100;_++)cout<<"*"<<endl;A.正确B.错误21.下面C++代码被执行后,将先后输出3和5。()。for(inti=3;i<5;i+=2)printf("%d",i);A.正确B.错误22.下面的C++代码执行后将先后输出7个true。()。for(inti=0;i<10;i++)cout<<(i*2<i*i)<<"";A.正确B.错误23.在C++代码中,user_Name、_userName、user-Name、userName_都是合法的变量名。()。A.正确B.错误24.题C++语言中continue语句可以来提前结束循环。()。A.正确B.错误25.题C++中定义整型变量N,执行语句scanf("%d",&N);cout<<N/3*5;时输入3.6,则输出是6。()。A.正确B.错误三、编程题(每题25分,共50分)。26.图书馆里的老鼠。题目描述:图书馆里有n本书,不幸的是,还混入了一只老鼠,老鼠每x小时能啃光一本书,假设老鼠在啃光一本书之前,不会啃另一本。请问y小时后图书馆里还剩下多少本完整的书。输入格式:三行,第一行一个正整数n,表示图书馆里书的数量。第二行,一个正整数x,表示老鼠啃光一本书需要的时间。第三行,一个正整数y,表示经过的总时间。输入数据保证y小时后至少会剩下一本完整的书。输出格式:一行,一个整数,表示y小时后图书馆里还剩下多少本完整的书。数据范围:对于所有测试点,保证1≤n,x,y≤1000,保证y小时后至少会剩下一本完整的书。27.四舍五入。题目描述:四舍五入是一种常见的近似计算方法。现在,给定n个整数,你需要将每个整数四舍五入到最接近的整十数。例如,43四舍五入后为40,58四舍五入后为60。输入格式:共n+1行,第一行,一个整数n,表示接下来输入的整数个数。接下来n行,每行一个整数a1,…,an,表示需要四舍五入的整数。输出格式:n行,每行一个整数,表示每个整数四舍五入后的结果。数据范围:对于所有测试点,保证1≤n≤100,1≤ai≤10000。答案解析如下。1.答案:D。解析:哪吒2是电影作品,deepseek是人工智能语言模型,A、B、C三个选项描述均错误,只有D选项描述正确,deepseek具有强大的自然语言处理能力,可以根据场景生成剧情脚本。2.答案:D。解析:在编辑代码过程中,可以修改变量定义,可以保存程序,书写错误可以撤销修改,这些操作都是常见的代码编辑情况,只有D选项错误,不可以在代码中插入截图。3.答案:D。解析:在C++中变量定义规则是——仅由数字、字母、下划线组成,数字不可以开头,不能和关键字冲突。选项A、B、C中均有不符合要求的字符,只有D选项正确。4.答案:C。解析:C++语言的关键字是被语言本身定义的具有特定含义的标识符。“do”是C++中的关键字,用于构成“do-while”循环语句。而A选项“abs”是C++标准库中的函数名,用于计算绝对值;B选项“cin”和D选项“endl”都不是关键字,“cin”是C++标准输入流对象,“endl”是C++标准库中的操纵符,用于插入换行符并刷新输出缓冲区。5.答案:C。解析:本题考查基础语法,分支语句if是不可以直接使用break的,需要配合循环或switch使用,故只有C选项会编译失败。6.答案:B。解析:%02d补前导零,数字3前补0,凑两位,%2d右对齐,22本身就是两位,组合输出03和22,而$是普通字符输出,故选择B选项。7.答案:C。解析:首先D选项改为三引号,是符合语法的,不会报错,其次单引号用于字符,双引号用于字符串,不能相互替代,C选项错误。8.答案:D。解析:/号和%号为同级运算,没有先后顺序,按照从左到右的顺序计算,16/4结果为4,4%2结果为0。9.答案:D。解析:变量N=12依照运算优先级,先计算12%3=0,12/5=2(整除),输出的是0+2=2。10.答案:D。解析:在printf格式化输出时,%d占位符会原样输出,两个%d显示成10,其余所有符号都正常输出,结果为D选项。11.答案:D。解析:first=100,second=200,依照从左至右顺序,100/200由于整除结果为0,乘以200后结果依然为0,选择D选项。12.答案:C。解析:选项C中&&前半部分!(i%2),可以判断是否被2整除,但是后半部分!(i%7),只能判断是否被7整除,不能判断是否余数为2。13.答案:A。解析:观察题目给出的程序,属于对称区间求和,从-999~-1和1~999会相互抵消,剩下的是-1000。14.答案:A。解析:依照题目给出的程序,循环变量i以步长为5,一直增大,i=96是符合循环条件可以继续循环的,再增大一次i=101,退出循环,最终变量i为101。15.答案:C。解析:依照题目给出的程序,遍历过程中i=5,10,15~90,95(i<100),仅当i=5,15,25,35,45,55,65,75,85,95满足奇数条件,tnt变量会自增1,最终tnt=10,整个循环过程中并不会被break打断。16.答案:正确。解析:高级语言需要编译为机器码执行,C++、Python都是高级编程语言,题目描述正确。17.答案:错误。解析:当N为正整数时,表达式是整除的,最终结果为0。18.答案:错误。解析:变量N不是int类型,char类型范围有限,输入10时,N只接收字符'1',且输出ASCII码而非数值,题目描述错误。19.答案:正确。解析:依照题目给出程序,在执行完if语句,输出偶数两个字之后,会执行下一次循环,是否书写continue并没有影响。20.答案:错误。解析:程序不会报错,依照变量名的命名规则,下划线是合法变量名。21.答案:错误。解析:循环过程中变量i为3可以循环,输出数字3,增加2后变量变为5,不符合<5,循环结束,不会输出5。22.答案:错误。解析:当i=0时,0<0为假,i=1时,2<1为假,i=2时,4<4为假,其余i≥3时成立,共7个真,但是会打印3个0,7个1,不是打印true这个单词。23.答案:错误。解析:变量名仅能由数字、字母、下划线构成,其中user-Name是不合法变量名。24.答案:错误。解析:continue是跳过本次循环,继续执行下一次循环,break语句才是打断,用于结束循环。25.答案:错误。解析:输入3.6,设置的%d接收的是3,而非3.6,计算3/3*5=5,故输出6是错误描述。26.参考答案。#include<bits/stdc++.h>usingnamespacestd;intmain(){intn,x,y,ans;cin>>n>>x>>y;assert(1<=n&&n<=1000&&1<=x&&x<=1000&&1<=y&&y<=1000);ans=n-y/x-1+(y%x==0);assert(ans>=1);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论