#P3486. 2024初赛

2024初赛

当前没有测试数据。

Description

一、单选题
1. 编写程序,计算区间100~n之间的所有整数(100 < n <= 999),数字x(0 < x < 9)共出现的次数。补全①、②和③处的代码。
例如:100到109中,即100、101、102、103、104、105、106、107、108、109中,数字1出现了11次。 </p>
#include <iostream>
using namespace std;

int main() {
    int n, x, cnt = 0;
    cin >> n >> x;
    for (int i = 100; i <= n; i++) {
        ___①___
        int g, s, b;
        g = a % 10;
        _②__
        _③__
        if (g == x) {
            cnt++;
        }
        if (s == x) {
            cnt++;
        }
        if (b == x) {
            cnt++;
        }
    }
    cout << cnt << endl;
    return 0;
}
</p>
</p> A. int a = i; s = a / 10 % 10; b = a / 100;
B. int g = i; s = g % 10; b = g % 100;
C. int cnt = i; s = cnt % 10; b = cnt / 100;
D. int a = n; s = a / 10; b = a % 100;


2. 完全数是指一个数恰好等于除它本身之外的所有因数之和。例如:6的因数有1、2、3、6,除去6之外的因数之和为1 + 2 + 3 = 6,所以6为完全数。编写程序,按从小到大的顺序寻找1到10000之间的完全数,输出第n个完全数,n的范围0 < n < 5。补全①、②和③处的代码。

#include<iostream>
using namespace std;
int main(){
    int n,sum = 0, num = 0;
    cin >> n;
    for(int i=1; i<10000;i++){
        int a = i;
        sum = 0;
        for(int j=1; j <a; j++){
            if(a%j == 0){
                _①_
            }
        }
        if(_②_){
            num++;
        }
        if(num == n){
            cout<<a;
            _③_;
        }
    }
    return 0;
}


A. sum += i; sum == a; continue;
B. sum += j; sum == a; break;
C. sum += j; sum == a; continue;
D. sum += i; sum == a; break;
3. 下面哪个语句运行结果是9?
</p> A. cout << "5+ 4" << endl;
B. cout << 5 << "+" << 4 << endl;
C. cout << 5 + 4 << endl;
D. cin >> 5 + 4 >> endl;
</p> 4. 下面代码实现的是判断n是否是质数的功能。补全①和②处的代码。 </p>
#include <iostream>
using namespace std;
int main(){
    int n;
    cin >> n;
    _①_
    for(int i = 2; i < n; i++){
        if(_②_){
            isprime = false;
            break;
        }
    }
    cout << isprime << endl;
    return 0;
} 

A. bool isprime = true; n % i == 0
B. bool isprime = false; n % i != 0
C. bool isprime = true; n % i != 0
D. bool isprime = false; n % i == 0

</p> 5. 在C++中,表示布尔数据类型的关键字是:
</p> A. int
B. bool
C. double
D. string
</p> 6. 声明一个整型变量age的正确方式是:
</p> A. int age;
B. float age;
C. string age;
D. char age;
</p> 7. 假设有两个城市:城市A和城市B。每个城市的温度都在-50到50摄氏度之间。当且仅当只有一个城市的温度低于0时,输出1,否则输出0。补全①和②处的代码。
</p>
#include <iostream>
using namespace std;
int main()
{
    int a, b;
    cin >> a >> b;
    if(_①_)
    {
        if(_②_){
            cout << 1;
            return 0;
        }
    }
    if(a >= 0){
        if(b < 0){
            cout << 1;
            return 0;
        }
    }
    cout << 0;
    return 0;
}
</p> A. a < 0 b >= 0
B. a > 0 b <= 0
C. a >= 0 b >= 0
D. a < 0 b < 0
</p> 8. 运行以下程序,输出的结果是: </p>
#include <iostream>
using namespace std;
int main() {
    int a = 5;
    int b = a + 3;
    int c = b - 2;
    cout << c;
    return 0;
}
</p>
</p> A. 6
B. 8
C. 5
D. 10
</p> 9. C++中有很多数据类型,以下可以定义存储浮点型变量的关键字是:
</p> A. int
B. double
C. char
D. long long
</p> 10. 执行以下程序段,输入11,则输出的值是: </p>
int x;
cin >> x;
cout << x + 2;
</p> A. 10
B. 11
C. x
D. 13
</p> 11. 在C++中,表示小于或等于的关系运算符是:
</p> A.
B. ==
C. <=
D. >


12. 在C++中,以下正确的变量命名是:
</p> A. 2things
B. _myVariable
C. my-variable
D. None of the above
</p> 13. 要在C++中打印"Hello, World!",以下语句正确的是:
</p> A. cout << "Hello, World!"
B. cout "Hello, World!"
C. cout << Hello, World!
D. cout >> "Hello, World!"
</p> 14. 小A有一个神奇口袋,里面可以装各个平方数。口袋的负载量就是口袋里所有数字之和。当负载量超过L的时候不能再装平方数。现在给定n个数,从左往右筛选其中的平方数,并依次将平方数放入口袋,编成程序,输出口袋里能装下几个平方数。补全①、②和③处的代码。 </p>
#include <iostream>
using namespace std;
int main() {
    int L, n, cnt = 0, sum = 0;
    cin >> L >> n;
    for (int i = 1; i <= n; i++) {
        int x;
        bool flag = false;
        cin >> x;
        for (int j = 1; j < x; j++) {
            if (_①_) {
                flag = true;
                break;
            }
        }
        if (flag == true) {
            if (_②_) {
                sum += x;
                cnt++;
            } else {
                _③_
            }
        }
    }
    cout << cnt;
    return 0;
}
</p> A. j*j==x sum+x<=L continue;
B. j*j==x sum+x<=L break;
C. x/j==i sum<=L continue;
D. x/j==i sum<=L break;
</p> 15. 运行以下程序,输出的结果是:
#include <iostream>
using namespace std;
int main() {
    cout << "Hello" << " ";
    cout << "World";
    return 0;
}
</p> A. Hello, World
B. Hello World
C. 语法错误
D. 无任何输出
</p> 二、判断题(T选项代表正确,F选项代表错误)
16. 在C++中,整型int可以用来存储小数。
</p> A. 正确
B. 错误
</p> 17. 在C++中,&&和||分别代表逻辑与和逻辑或运算。
</p> A. 正确
B. 错误
</p> 18. 在C++中,变量声明后,如果不初始化,其值是确定的。
</p> A. 正确
B. 错误
</p> 19. 在C++中,cout用于输入,而cin用于输出。
</p> A. 正确
B. 错误
</p> 20. 在C++中,break语句可以用来立即退出当前的循环。
</p> A. 正确
B. 错误
</p>

Source

信息素养大赛 初中组 初赛