欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 资讯 > 2025年 全国青少年信息素养大赛 算法创意挑战赛C++ 小学组 初赛真题

2025年 全国青少年信息素养大赛 算法创意挑战赛C++ 小学组 初赛真题

2025/5/23 18:29:54 来源:https://blog.csdn.net/m0_51666430/article/details/148085126  浏览:    关键词:2025年 全国青少年信息素养大赛 算法创意挑战赛C++ 小学组 初赛真题

        需要免费获取 参考答案 和 详细解析 的同学,可前往 ET答题 (etdati.cn)免费阅览。
        ET答题 是专注青少年编程教育的在线平台,其中主要以C++编程为主(可在线提交编程题代码验证答案 OJ系统),图形化、Python为辅,收录有近几年各大青少年编程竞赛的真题,并且每道题都配有详细解析。

素养大赛的题目每个考生略有不同,我都整理在ET答题网站上面了,下面是其中一套真题试卷。

单选题(15题,共75分)

第1题
执行以下程序,输入56 25,输出的结果是? 

int a, b;
cin >> a >> b;
cout<<max(a,b);

A.56

B.25

C.1000

D.无输出

第2题
在C++中,a=a-b可以简写为a--b。执行下列代码,输出结果为?

int a=10;
a-=9;
cout<<a;

A.2

B.-6

C.9

D.1

第3题
下列不属于C++基本程序框架的是? 

A.头文件

B.命名空间

C.主函数

D.程序开发时间:2025-03-23

第4题
已知正方形边长为a,下列选项中,可以计算正方形周长的是?

A.cout<<a;

B.cout<< 2*a;

C.cout<< 4*a;

D.cout<< 10*a;

第5题
下列关系运算符,可以用来判断两数相等的是?

A.==

B.>

C.<=

D.<

第6题
下面程序段输出的结果是?

char upper='A';
char lower = upper + 32 ;
cout << lower;

A.A

B.a

C.65

D.97

第7题
执行下列代码,输出结果为?

for (int i=1; i<=5; i++) {if( i%2==0 ) {continue;}cout <<i<< " ";
}

A.1

B.2 4

C.1 3 5

D.1 2 3 4

第8题
执行以下程序,输出的结果是?

int array[3]= {4, 5, 6};
array[0] = array[0]-3;
cout<<array[0]<<" "<<array[1]<<" "<<array[2];

A.4 5 6

B.1 5 6

C.4 2 6

D.4 5 3

第9题
现有数组定义为int num[4]={6}; 则数组num中的元素分别是?

A.6 6 6 6

B.0 0 0 0

C.6 0 0 0

D.0 0 0 6

第10题
小明同学想判断输入的年份x是否是闰年,是则输出Yes,否则输出No。那么下面程序段中①处应该填写( )。一个年份如果能被400整除或者能被4整除但不能被100整除,那么这个年份就是闰年。例如:2000、2020是闰年。 

int x;
cin >> x;
if(_①_) {cout << "Yes";
} else {cout << "No";
}

A.x%400==0 && x%4==0 && x%100!=0

B.%400==0 && x%4==0 || x%100!=0

C.x%400==0 || x%4==0 || x%100!=0

D.(x%400==0) || (x%4==0 && x%100!=0)

第11题
运行以下程序,输入6,输出的结果是?

#include <iostream>
using namespace std;
int main() {int n;cin >> n;if (n % 2 == 0) {cout << "QWER";} else if (n % 3 == 0) {cout << "WERQ";} else if (n % 5 == 0) {cout << "ERQW";} else {cout << "RQWE";}return 0;
}

A.QWER

B.WERQ

C.ERQW

D.RQWE

第12题
下图为n=5时输出的图案,输入一个正整数n,输出一个n+1行特殊的直角三角形,则①处应补充的代码为?

*
**
****
******
********
**********int n;
cin >> n;
cout << "*"<< endl;
for (int i=1; i<=n; i++) {for (int j=1; _①_; j++) {cout << "*";}cout << endl;
}

A.j<=2*i

B.j<=i

C. j<=2*i-1 

D.j<=2*i+1

第13题
阅读以下代码,输出的内容是?

#include <iostream>
using namespace std;
int main() {for(int i=1; i<=4; i++) {for(int j=5; j>=1; j--) {cout<<j<<" ";}cout << endl;}return 0;
}

A.
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5

B.
5 4 3 2 1
5 4 3 2 1
5 4 3 2 1
5 4 3 2 1

C.
1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4

D.
5 4 3 2 1
5 4 3 2 1
5 4 3 2 1

第14题
阅读程序,当输入7,程序输出的结果为?

#include<iostream>
using namespace std;
int main() {int n;int a[51]= {};cin >> n;a[1]= 1;for(int i=2; i<=n; i++) {a[i] = a[i-1]* 2 + 1;}cout << a[n];return 0;
}

A.63

B.97

C.115

D.127

第15题
运行以下程序,输出的结果是?

int a[6]= {1, 2, 3, 4, 5, 6};
for (int i=0; i<=5; i++) {cout << a[i] << "+";
}

A.1 2 3 4 5 6

B.1+2+3+4+5+6+

C.1+2+3+4+5+6

D.1,2,3,4,5,6,

判断题(5题,共25分)

第1题
在C++中,&&表示逻辑运异符"或"。

第2题
在C++中,可以通过这种方式定义数组并初始化:int c[3]={1,2,3,4,5}。

第3题
在C++语言中,一维数组的下标是从0开始。

第4题
定义int arr[10];后,执行arr[10]=5;不会导致数组越界。

第5题
下面代码段最终的值是-1。

int i=5;
while(i>0){i-=2;
}

参考答案 和 详细解析可前往 ET答题 平台免费阅览

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词