2024年3月CCF-GESP编程能力等级认证C++编程四级真题答案及解析.pdfVIP

2024年3月CCF-GESP编程能力等级认证C++编程四级真题答案及解析.pdf

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

一、单选题

1、若函数声明为intf(intx){x+=3;returnx;},则对声明的变量inta=3

,下面哪个调用能够改变a的值()。

Af(a);

Bf(*a);

Cf(a);

Df(a-3);

解析:【喵呜刷题小喵解析】题目中的函数定义为intf(intx){x+=3;returnx;

},它接受一个整数引用作为参数,并改变这个引用的值。要改变变量a

的值,需要传递变量a的引用给函数。在C++中,变量引用通过

符号表示,所以应该调用函数f(a)。因此,选项A是正确的。选项B、C和D

都是错误的,因为它们没有传递变量a的引用给函数。选项B试图传递变量a

的值,选项C试图传递变量a,而不是引用,选项D传递了一个与a无关的值。

2、下面C++代码执行后,输出的是()。

intmain()

{

intx[]={2,0,2,4};

chargeSP[]=GradeExaminationofSP;

coutgeSP[sizeof(x)]endl;

coutendl;

return0;

}

AG

Be

Cn

DP

解析:【喵呜刷题小喵解析】

首先,我们需要理解代码中的关键部分。

代码中的数组`x`是一个整型数组,包含4个元素。`sizeof(x)`会返回数组`x`的大小

,即4。

字符串`geSP`是一个字符数组,包含17个字符。

`coutgeSP[sizeof(x)]

endl;`这行代码试图输出`geSP`数组中索引为`sizeof(x)`的字符。由于`sizeof(x)`的值

为4,所以输出的字符是`geSP`数组中索引为4的字符,即P。

因此,输出的结果应该是P。

选项A、B、C中的字符G、e、n都不是`geSP`数组中索引为4的字符,所以它们

都是错误的。

所以,正确答案是D。

3、下面C++代码执行后输出是()。

intfoo(float*f)

{

returnint(*f*2);

}

intmain()

{

floatfnum[10]={1.1};

fnum[1]=foo(fnum);

coutfnum[0]+fnum[1]endl;

coutendl;

return0;

}

A1

B1.1

C3

D3.1

解析:【喵呜刷题小喵解析】

首先,我们分析函数foo。函数foo接受一个指向float类型的指针f,然后返回f指向

的值的两倍,并将其转换为int类型。

然后,我们分main函数。在main函数中,我们有一个数组fnum,其中只有一个

元素被初始化为1.1。接着,我们调用foo函数,将fnum数组的第一个元素作为参数

传递进去。foo函数返回该元素的2倍,即2.2,然后将这个值赋给fnum数组的第二

个元素。

最后,我们输出fnum数组的前两个元素的和,即1.1+2.2=

3.3。但是,因为fnum数组的第二个元素是2.2,但我们将其赋值给了fnum[1],而fn

um[1]在输出前没有进行类型转换,所以其被视为int类型,即2。所以,我们输出的

是1.1+2=3。

因此,正确答案是C,即3。

4、对二维数组intarr[3][16];,则arr[1]占用内存的大小为()字节。

A4

B16

C48

D64

解析:【喵呜刷题小喵解析】:二维数组intarr[3][16];

表示一个3行16列的二维数组,每个元素都是整型(int),在大多数系统中,整型

(int)占用4字节。因此,arr[1]是一个包含16个整数的数组,总共占用16*4=64

字节。但题目要求的是arr[1]占用内存的大小,即16*4=64字节,故正确选项是

B,16字节。这里需要注意的是,arr[1]

并不直接占用内存64字节,而是其包含的所有元素共占64字节。

5、对二维数组intarr[3][16];,若arr的地址

文档评论(0)

喵呜刷题 + 关注
实名认证
文档贡献者

来喵呜刷题,完成你的职业蜕变!

1亿VIP精品文档

相关文档