2024年03月 GESP等级认证C++编程(一级)试题解析

【单选题】(每题2分)

1、C++表达式 (3 - 2) * 3 + 5 的值是?( )

A、-13    B、8    C、2    D、0    

正确答案:B

2、C++语句 cout << "5%2=" << 5 % 2 执行后的输出是?( )

A、2 2    B、1 1    C、5%2=2    D、5%2=1    

正确答案:D

3、执行C++语句 cin >> a 时如果输入5+2,下述说法正确的是?( )

A、变量a将被赋值为整数7    B、变量a将被赋值为字符串,字符串内容为5+2    C、语句执行将报错,不能输入表达式    

D、依赖于变量a的类型。如果没有定义,会有编译错误    

正确答案:D

4、下面C++代码执行后的输出是?( )

int a = 1;

cout << "a+1= " << a+1 << endl;

A、a+1= 2    B、a+1=2    C、2=2    D、2= 2    

正确答案:A

5、下面C++代码执行后的输出是?( )

int a = 1;

printf("a+1=%d\n", a+1);

A、a+1= 2    B、a+1=2    C、2=2    D、2= 2    

正确答案:B

6、下面C++代码执行时输入21后,有关描述正确的是?( )

int N;

cin >> N;

if(N% 3 == 0)

    cout << "能被3整除";  //第4行

else if (N % 7 == 0)

    cout << "能被7整除";

else  //第7行

    cout << "不能被3和7整除";  //第8行

cout << endl;

A、代码第4行被执行    B、第4和第7行代码都被执行    C、仅有代码第7行被执行    

D、第8行代码将被执行,因为input()输入为字符串    

正确答案:A

7、下面C++代码第2行,总共被执行次数是?( )

for(int i=-10; i<10; i++)

    cout << i << " ";

A、10    B、19    C、20    D、21    

正确答案:C

8、下面C++代码执行后的输出是?( )

int tnt = 0;

for(int i=0; i<10; i++)

    if(i%3 && i%7)

        tnt +=i;

cout << tnt << endl;

A、0    B、7    C、18    D、20    

正确答案:D

9、下面C++代码执行后的输出是?( )

int N = 10;

while(N){

    N -= 1;

    if(N%3 == 0)

        cout << N << "#";

}

A、9#6#3#    B、9#6#3#0#    C、8#7#5#4#2#1#    D、10#8#7#5#4#2#1#    

正确答案:B

10、下面C++代码用于判断键盘输入的整数是否为质数。质数是只能被1和它本身整除的数。在横线处应填入代码是?( )

int N;

cin >> N;

int cnt = 0; // 记录N被整除的次数

for(int i=1; i<N+1; i++)

    if(________________)

        cnt +=1;

if(cnt == 2)

    cout << N << "是质数";

else

    cout << N << "不是质数";

A、N % i    B、N % i == 0    C、N / i == 0    D、N / i    

正确答案:B

11、下面关于整型变量int x的赋值语句不正确是?( )

A、x=(3.16);    B、x=3.16;    C、x=int(3.16);    D、x=3.16 int;    

正确答案:D

12、C++语言中下面可以完成数据输入的语句是?( )

A、printf语句    B、scanf语句    C、default语句    D、cout语句    

正确答案:B

13、在Dev C++中对一个写好的C++源文件要生成一个可执行程序需要执行下面哪个处理步骤?( )

A、创建    B、编辑    C、编译    D、调试    

正确答案:C

14、小杨的父母最近刚刚给他买了一块华为手表,他说手表上跑的是鸿蒙,这个鸿蒙是?( )

A、小程序    B、计时器    C、操作系统    D、神话人物    

正确答案:C

15、中国计算机学会(CCF)在2024年1月27日的颁奖典礼上颁布了王选奖,王选先生的重大贡献是?( )

A、制造自动驾驶汽车    B、创立培训学校    C、发明汉字激光照排系统    D、成立方正公司    

正确答案:C

【判断题】(每题2分)

16、在C++代码中变量n被赋值为27,则 cout << n%10 执行后输出的是7。( )

正确答案:正确

17、C++语句 printf("%d#%d&",2,3) 执行后输出的是2#3&。( )

正确答案:正确

18、C++函数scanf()必须含有参数,且其参数为字符串型字面量,其功能是提示输入。( )

正确答案:错误

19、C++表达式 "10"*2 执行时将报错,因为 "10" 是字符串类型而2是整数类型,它们数据类型不同,不能在一起运算。( )

正确答案:正确

20、在C++中,while可能是死循环,而for循环不可能是死循环。( )

正确答案:错误

21、在C++,break语句用于提前终止当前层次循环,适用于while循环,但不适用于for循环。( )

正确答案:错误

22、C++语言中3.0和3的值相等,所以它们占用的存储空间也相同。( )

正确答案:错误

23、在C++的程序中,cin是一个合法的变量名。( )

正确答案:正确

24、小杨今年春节回奶奶家了,奶奶家的数字电视可以通过遥控器输入电视剧名称来找到想播放的电视剧,所以可以推知里面有交互式程序在运行。( )

正确答案:正确

25、任何一个 for 循环都可以转化为等价的 while 循环。( )

正确答案:正确

【编程题】

26、小杨买书

【问题描述】

小杨同学积攒了一部分零用钱想要用来购买书籍,已知一本书的单价是13元,请根据小杨零用钱的金额,编写程序计算最多可以购买多少本书,还剩多少零用钱。

【输入描述】

输入一个正整数 m,表示小杨拥有的零用钱数。

【输入描述】

输出包含两行,第一行,购买图书的本书,第二行剩余的零用钱数。

【样例输入 1】

100

【样例输出 1】

7

9

【样例输入 2】

199

【样例输出 2】

15

4

对于全部数据,保证有 0 < m < 200。

【参考程序】

#include <iostream>

using namespace std;

int main() {

    int m;

    cin >> m;

    cout << m / 13 << endl;

    cout << m % 13 << endl;

}

27、找因数

【问题描述】

小 A 最近刚刚学习了因数的概念,具体来说,如果一个正整数 a 可以被另一个正整数 b 整除,那么我们就说 b 是 a 的因数。

请你帮忙写一个程序,从小到大输出正整数 a 的所有因数。

【输入描述】

输入一行一个正整数 a。保证 a ≤ 1,000。

【输入描述】

输出若干行,为 a 的所有约数,从小到大排列。

【特别提醒】

在常规程序中,输入、输出时提供提示是好习惯。但在本场考试中,由于系统限定,请不要在输入、输出中附带任何提示信息。

【样例输入 1】

1

【样例输出 1】

1

【样例输入 2】

6

【样例输出 2】

1

2

3

6

【样例输入 3】

10

【样例输出 3】

1

2

5

10

【参考程序】

#include <iostream>

using namespace std;

int main() {

    int a;

    cin >> a;

    for (int i = 1; i <= a; ++i) {

        if (a % i == 0) {

            cout << i << endl;

        }

    }

    return 0;

}

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编程小伙伴测评网

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值