最好用电脑,谷歌浏览器做题; 页面打开不要超过1天,不然就失效了。

NOC初赛C++模拟题1


1.单选题

1.在C++中可以使用++和-进行自增自减运算,阅读下列程序片段,请问输出
结果是什么
int a=14,b=4,ans;
ans=(++a/2)+(b--/2);
cout<<ans;


A.9

B.8

C.7

D.无结果

2.C++中有很多数据类型,以下可以定义字符变量的关键字是什么()


A.int

B.float

C.char

D. long long

3.3.下列字符列中,可以作为“字符串常量”的是()。


A.ABC

B. "xyz'

C. uvw'

D.'a'

4.设变量 m,n,a,b,c,d 均为 0,执行(m = a==b)|(n=c==d)后, m,n的值是()。


A.0,0

B.0,1

C.1,0

D.1,1

5.计算机的存储器中,组成一个字节(Byte)的二进制位(bit)个数是()。


A:4

B:8

C:16

D:32

2.判断题

1.int a[2][2]={1}表示把二维数组中的所有元素初始化为1()
 


正确

错误

2.字符数组在定义时可以将整个字符串一次性赋值给它()
 


正确

错误

3.int a[2][3]表示定义了一个2行3列的整型数组()


正确

错误

3.填空题

1.运行下列代码,当输入为12时,输出结果是
#include <iostream>
using namespace std;
int main{
   int x;
   cin>>x
   int sum=0;
   for(int i=1;i<=x;i++){
      if(i%3==0 | i/10==1){
           continue;
      else{
         sum=sum+i*i;
      }
    }
    cout< <sum;
    retum 0;
}

答案: 
4.单选题

1.输入三个自然数n,i,j(1<=i<=n, 1<=j<=n), 输出在一个n×n格的棋盘中(行列均从1开始编号),与格子(i,j)同行、同列、同一对角线的所有格子的位置。
如:n=4,i=2,j=3表示了棋盘中的第二行第三列的格子,
当n=4,i=2,j=3时,输出的结果是:
(2,1)(2,2)(2,3)(2,4) 同一行上格子的位置
(1,3)(2,3)(3,3)(4,3) 同一列上格子的位置
(1,2)(2,3)(3,4) 左上到右下对角线上的格子的位置
(4,1)(3,2)(2,3)(1,4) 左下到右上对角线上的格子的位置
请补全下列程序,实现相应功能:
#include <iostream>
#include <iomanip>
using namespace std;
int main(){
   int n,i,j;
   cin >> n >> i>> j;
   for(int b=1;b<=n;++b){
       ①
   cout << endl;
   for(int a=1;a<=n;++a){
      ②
    }
   cout << endl;
   for(int a=1;a<=n;++a){
         for(int b=1;b<=n;++b){
                if(③) {
                  cout <<"("<<a<<","<< b<<")"<<"";
                }
         }
   }
  cout << endl;
  for(int b=n;b>=1;--b){
         for(int a=1;a<=n;++a)(
                  if(④){
                       cout << "("<<b<<","<< a<<")"<<"";
                   }
         }
}
return 0;
}

①处应填()


A. cout <<"("<<i<<","<< b <<")" <<"";

B. cout << "("<<j<<"," << b <<")" << " ";

C. cout << "("<< b <<","<<i<< ")" << " ";

D. cout <<"("<<b<<","<<j<<")"<<"";

2.②处应填()


A. cout << "("<<a<<","<<i<< ")" << " ";

B. cout << "("<<a<<","<<j<<")" << " "

C. cout << "("<<i<<","<< a<<")" << " ";

D. cout <<"("<<j<<","<< a<<")"<<"";

3.③处应填()


A. b-i == a-j

B. bJ== aI

C. b-j== a-i

D. bI == aJ

4.④处应填()


A. b-a== i-j

B. b-i == a-j

C. bJ== iA

D. b-j== i-a

5.编程题

1.最小公倍数(CP000094)
题目描述
两个或多个整数公有的倍数叫做它们的公倍数,其中除了0以外最小的公倍数称为这几个整数的最小公倍数,如6和4的最小公倍数为12。请你编写程序求出任意两个整数的最小公倍数x(x小于2147483647)。
输入格式
两个正整数n和m
输出格式
n和m的最小公倍数
输入样例
6 4
输出样例
12





2.第19届亚洲运动会将于2022年9月10日在杭州举行,在运动会体操项目中,现场会有10名评委对运动员的表现进行打分,采用去除一个最高分和一个最低分,余下取平均分作为运动员的最后得分,请你来帮助奥组员编写一个C++程序,实现这样的效果,10个裁判一次输入得分,自动生成运动员最终得分。
输入格式:
十个浮点数,表示评委的打分
输出格式:
一个浮点数,表示最终得分
输入样例: 
4 5 5 5 5 5 5 5 5 9
输出样例:
5







`

1.单选题
1 2 3 4 5
2.判断题
1 2 3
3.填空题
1
4.单选题
1 2 3 4
5.编程题
1 2