2025年全国青少年信息素养大赛算法创意实践挑战赛
(C++语言)小学组复赛模拟试题
考试时间:90分钟????满分:100分
一、单选题(每题4分,共5题,20分)
1.在C++中,以下哪个是合法的注释方式?
A./*这是注释*/
B.//这是注释
C.!--这是注释--(HTML注释语法)
D.A和B都正确
答案:D
2.C++中,if(ab){coutA大;}else{coutB大;}的作用是?
A.比较两个数并输出较大的那个
B.计算两个数的和
C.定义一个函数
D.循环输出字符串
答案:A
3.以下哪个是C++中用于定义数组的正确语法?
A.intarr(3)={1,2,3};(错误语法)
B.intarr[3]={1,2,3};
C.arrayarr[3]={1,2,3};(未使用std::array)
D.intarr={1,2,3};(错误语法)
答案:B
4.在C++中,switch语句通常用于?
A.循环结构
B.多条件分支判断
C.定义变量
D.输出字符串
答案:B
5.以下哪个是C++中用于从键盘输入一个整数的语句?
A.cininta;(错误语法)
B.inta;cina;
C.scanf(%d,a);(C语言语法)
D.input(a);(错误语法)
答案:B
二、编程题(每题16分,共5题,80分)
题目:计算圆的面积
要求:编写一个C++程序,输入圆的半径r,计算并输出圆的面积(公式:面积=π*r*r,取π=3.14)。
输入示例:
5
输出示例:
78.5
题目:统计正数个数
要求:编写一个C++程序,输入5个整数,统计其中正数的个数并输出。
输入示例:
-120-34
输出示例:
2
题目:打印九九乘法表
要求:编写一个C++程序,输出完整的九九乘法表(1×1到9×9),每行格式如1×1=1,用制表符\t分隔。
输出示例:
1×1=11×2=22×2=41×3=32×3=63×3=9...(省略部分)9×9=81
题目:反转字符串
要求:编写一个C++程序,输入一个字符串(长度≤100),输出其反转后的字符串。
输入示例:
hello
输出示例:
olleh
题目:斐波那契数列
要求:编写一个C++程序,输入一个整数n,输出斐波那契数列的前n项(数列从第1项开始,1,1,2,3,5,...)。
输入示例:
5
输出示例:
11235
答案
一、单选题答案
1.D
2.A
3.B
4.B
5.B
二、编程题答案
计算圆的面积
#includeiostream
usingnamespacestd;
intmain(){
doubler;
cinr;
doublearea=3.14*r*r;
coutareaendl;
return0;
}
统计正数个数
#includeiostream
usingnamespacestd;
intmain(){
intcount=0;
for(inti=0;i5;i++){
intnum;
cinnum;
if(num0){
count++;
}
}
coutcountendl;
return0;
}
打印九九乘法表
#includeiostream
usingnamespacestd;
intmain(){
for(inti=1;i=9;i++){
for(intj=1;j=i;j++){
coutj×i=i*j\t;
}
coutendl;
}
return0;
}
反转字符串
#includeiostream
#includestring
usingnamespacestd;
intmain(){
strings;
cins;
for(inti=s.length()-1;i=0;i--){
c