选择题 共5道

01 02 03 04 05


编程题 共5道

06 07 08 09 10

E846 全国青少年信息素养大赛 -2025-信息素养算法创意实践挑战赛-初中组-复赛-真题1-考试

选择题 共5道

01 C++表达式(5>3)*3的值是? 4分
登录后查看选项
02

以下说法错误的是?

int a, b;
cin >> a >> b;
a = a*b;
b += a;
cout << a <<" "<< b << endl;
4分
登录后查看选项
03

想输出 'a' ~ 'z' 26个字母,横线处可以填写?

for(int i=1; i<=26; i++) {
	cout<<_____<<endl;
}
4分
登录后查看选项
04

以下说法错误的是?

int n;
cin>>n;
while(n>0) {
	cout<<n%10;
	n/=10;
}
4分
登录后查看选项
05

运行程序并输入9,输出为?

#include <iostream>
using namespace std;
int a[15];
int main() {
	int n;
	cin >> n;
	a[1]=a[2]=1;
	for(int i=3; i<=n; i++) {
		a[i] = a[i-1]+ a[i-2];
	}
	cout << a[n];
	return 0;
}
4分
登录后查看选项

编程题 共5道

06
题目信息

探险队即将开启新的探险!出发之前,他们需要采购一些探险装备。探险队共有n人,每人需要3个探照灯、1 个氧气瓶,4 捆安全绳。已知探照灯x元一个,气瓶y元一个,安全绳z元一捆,请你写一个程序,帮助他们计算买探险装备总共需要花费多少钱。

输入

一行,四个整数 n,x,y,z,分别代表探险队人数、探照灯单价、氧气瓶单价、安全绳单价,整数间用空格隔开。

输出

一个整数,表示买装备的总花费。

数据范围

2 <= n,x,y z <= 100

输入样例
40 3 5 4
输出样例
1200
16分

C0331
登录后作答
07
题目描述

探险队勘探宝藏埋藏之地的地形,测量了东侧、中央、西侧三个关键点的海拔高度。请写一个程序,输入三个点的海拔高度,判断该地属于哪一种地形,地形分类如下:

1、山丘:中央高于东侧和西侧。

2、谷地:中央低于东侧和西侧。

3、平原:东侧、中央、西侧高度相同。

4、东侧坡:西侧高于中央,中央高于东侧。

5、西侧坡:东侧高于中央,中央高于西侧。

6、普通地形:不属于以上五种的任意一种。

输出要求:

如果是山丘,输出"hill"

如果是谷地,输出"valley"

如果是平原,输出"plain"

如果是东侧坡,输出"east"

如果是西侧坡,输出"west"

如果是普通地形,输出"common"

输入

三个整数a,b,c,用空格隔开,分别表示东侧、中央、西侧的海拔高度。

输出

一个字符串,"hill"、"valley"、"plain"、"east"、"west"、"common"中的一个。

数据范围

1 <= a,b,c <= 1000

输入样例
60 60 60
输出样例
plain
16分

C0332
登录后作答
08
题目描述

探险队即将进入藏宝地宫。地宫由n个区域组成,编号1~n,探险队用高科技探明了每个区域的宝藏数量a1,a 2,...,an。同时,他们也发现有些区域隐藏着机关,n个区域的机关的伤害值用b1,b2,...,bn表示,如果编号为i的区域没有机关,则bi=0。如果踏入了有机关的区域,不仅无法获得该区域的宝藏,还会受到相应的伤害值。

探险队准备了一个防御值为k的护盾抵挡伤害,如果探险队依次经过编号1~n区域的过程中受到的伤害总量超过了护盾的防御值k,则本次探险过于危险,输出"Danger",结束探险。如果探险队依次经过编号1~n的全部区域目受到的伤害总量没有超过护盾的防御值k,则输出获得的宝藏总数。

输入

第1行:两个空格隔开的正整数 n和k,表示区域个数和护盾防御值。

第2行:n 个非负整数a1,a2,...,an,ai表示编号为i的区域的宝藏数量。

第3行:n 个非负整数b1,b2,...,bn,bi表示编号为i的区域的机关伤害值。

输出

一个整数表示获得的宝藏总数,或者一个字符串"Danger"。

数据范围

1<=n<=1000,1<=k<= 10000,0 <=ai,bi<= 100

输入样例1

5 6

4 1 9 4 2

0 3 0 1 2

输出样例1
13
输入样例2

4 3

3 7 2 1

0 2 2 0

输出样例2
Danger
16分

C0333
登录后作答
09
题目描述

古代王国的尚经阁里藏着许多奇怪的书籍,这些书籍的标题都是由小写字母组成的字符串。其中一些书籍比较特殊,书名是回文串(无论从左往右读还是从右往左该都一样)。这些特殊的书籍可能记录着上古的秘空。由于书籍太多,你需要写一个程序来统计回文书名的数量,并将所有回文书名按输入先后顺序连在一起输出。

输入

第一行,一个正整数 n,表示共有 n本书,

接下来n行,每行一个字符串,表示书名。每个字符串由小写字母组成,不包含空格。

输出

第一行输出一个整数,表示回文书名的个数。

第二行输出一个字符串,所有回文书名依次连在一起的结果,中间没有空格。如果不存在回文书名,则不输出。

数据范围

1<=n<=100,每个字符串长度不超过 50。

输入样例

5

level

world

kayak

he110

civic

输出样例
3
levelkayakcivic
16分

C0334
登录后作答
10
题目描述

探险队进入了一个神秘空间,面前有n堆宝石,每堆宝石个数为正整数。旁边有一座石碑,上面刻印着取宝石的规则:探险者需要选定一堆宝石,从这堆宝石开始每隔k堆宝石拿走一堆宝石,违反规则者会受到神秘力量的惩罚!

已知每一堆宝石的个数,请问探险队最多能拿走多少个宝石?

输入

第一行:两个正整数 n,k,用一个空格隔开;

第二行:n 个正整数a1,a2,...,an,表示每堆宝石的个数。

输出

一个整数,表示最多能拿走的宝石个数。

数据范围

100%的数据:1<=n<=10^6,1<=k

输入样例

7 2

4 6 2 1 10 1 3

输出样例
16
16分

C0335
登录后作答