20
三、
STEMA
考试
C++
试卷(
24
年
10
月)
一、选择题
第一题
下列选项中,( )是C++的除法运算符。
A、* B、/ C、+ D、-
第二题
表达式1+2*3的结果是( )。
A、6 B、7 C、8 D、9
第三题
定义inta[5]={3,11,9,23,5},请问a[3]的值是()。
A、11 B、9 C、23 D、5
第四题
六进制数2345转换为二进制数后,二进制数位上有多少个数字是1?()
A、5 B、6 C、7 D、8
21
第五题
下面的函数要实现的功能是删除单向链表中所有值为value的节点,请问横线处应该填
写( )。
structNode
{
intval;
Node*nxt;
};
Node*DeleteNode(Node*head,intvalue)
{
Node*cur,node;
node.nxt=head;
cur=&node;
while(cur->nxt!=NULL)
{
else
cur=cur->nxt;
}
returnnode.nxt;
}
A、if(cur->val==value)cur->nxt=cur->nxt->nxt;
22
B、if(cur->val==value)node.nxt=cur->nxt;
C、if(cur->nxt->val==value)node.nxt=cur->nxt;
D、if(cur->nxt->val==value)cur->nxt=cur->nxt->nxt;
二、编程题
第一题
题目名称:购买铅笔
题目描述:
某班级里有n名同学,每名同学需要3支铅笔,请计算n名同学共需要多少支铅笔?
输入描述:
输入一个整数n(1≤n≤100),表示班级里的同学数量。
输出描述:
输出一个整数,表示n名同学共需要的铅笔数量。
样例输入:
10
样例输出:
30
第二题
题目名称:连续的整数
题目描述:
给定一个整数n,尝试找出三个连续的整数,使其和恰好为n。
23
例如:n=6;和为6的三个连续的整数是1、2、3(1+2+3=6)。
输入描述:
输入一个整数n(6≤n≤1000)。
输出描述:
按从小到大的顺序输出和为n的三个连续整数,整数之间以一个空格隔开;如果找不到,
输出-1。
样例输入:
6
样例输出:
123
第三题
题目名称:不变序列
题目描述:
给定包含n个整数的序列,如果序列中出现了连续k个及以上的位置元素都相等,则
称这些位置的元素组成的序列为不变序列。
请注意,对于同一段连续相等的元素,只统计最长的序列,而不重复计数其子序列。
如:序列[6,4,4,4,4],只统计[4,4,4,4],不用再统计其子序列,如[4,4,
4]。
请统计给定的序列中有多少个不变序列,并输出其中最长不变序列的长度。
24
例如:n=10,k=3;序列为[1,3,2,2,2,6,4,4,4,4],其中不变序列有
2个,分别是[2,2,2]和[4,4,4,4],其中最长不变序列的长度为4。
输入描述:
第一行输入两个整数n和k(1≤n≤300,2≤k≤n),整数之间以一个空格隔开;
第二行输入n个整数ai(1≤ai≤1000,
2024年10月STEMA考试 C++ 真题